Làm thế nào để nhập dữ liệu trong một cột của excel không trùng nhau?

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi phnam77, 2 Tháng mười 2006.

11,127 lượt xem

  1. phnam77

    phnam77 Thành viên sơ cấp

    Bài viết:
    7
    Đã được thích:
    0
    Nơi ở:
    Ha noi
    Chào các bạn trên diễn đàn,
    Hiện tại công việc của mình đang có 1 việc phải nhập dữ liệu vào 1 cột của excel nhưng dữ liệu cột đó không được trùng nhau hoặc nếu trùng nhau thì sẽ báo là trùng với dữ liệu ô nào. Bạn nào có cách gì xin chỉ giúp.
    Xin cảm ơn nhiều.
    Phạm Hoài Nam
    YM: pham_hoai_nam
    email: pham_hoai_nam@yahoo.com
     
    #1
  2. levanduyet

    levanduyet Welcome

    Bài viết:
    535
    Đã được thích:
    11
    Giới tính:
    Nam
    Nơi ở:
    HCM
    Để làm theo yêu cầu của bạn chúng ta có thể sử dụng các cách sau:
    _Dùng format conditional.
    _Dùng VBA để kiểm tra mỗi khi bạn nhập vào/Nếu trùng thì thông báo cho bạn biết trùng tại hàng nào.
    Cách sau thì linh động hơn.


    Lê Văn Duyệt
     
    #2
  3. phnam77

    phnam77 Thành viên sơ cấp

    Bài viết:
    7
    Đã được thích:
    0
    Nơi ở:
    Ha noi
    cảm ơn anh Duyệt, anh có thể chỉ rõ hơn cách Dùng format conditional để xử lý vấn đề trùng dữ liệu không ạ?
     
    #3
  4. CSLAMVIEN

    CSLAMVIEN Thành viên sơ cấp

    Bài viết:
    5
    Đã được thích:
    0
    Nơi ở:
    Thu Duc-Tp.HCM
    Bạn có thể dùng hàm COUNTIF(), nó đơn giản hơn, mình hay sử dụng nó mỗi khi nhập invoice
     
    #4
  5. Song Huong

    Song Huong Thành viên thân thiết

    Bài viết:
    875
    Đã được thích:
    2
    Nơi ở:
    Hỏi quê, rằng mộng ban đầu đã xa
    Bạn dùng thủ tục sau để kiểm tra trùng dữ liệu trên cùng một cột.

    Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    On Error GoTo MyErr
    ' Khai bao cac bien
    Dim ColSelect, RowSelect, CurValue, ColValue, Counter, BegRow, EndRow, i, j
    BegRow = 1
    EndRow = 65536

    ' Xac dinh cot, dong can so sanh.
    Counter = 0

    For Each Item In Selection

    ColSelect = Item.Column
    RowSelect = Item.Row - 1
    Exit For
    Next Item

    ' So sanh gia tri

    CurValue = Cells(RowSelect, ColSelect).Value
    Counter = 0

    For j = BegRow To EndRow
    ColValue = Cells(j, ColSelect).Value
    If j <> RowSelect And CurValue = ColValue And RTrim(Trim(CurValue)) <> "" Then
    Counter = Counter + 1
    Exit For
    End If

    Next j


    If Counter > 0 Then
    MsgBox "There are duplicate key entries", vbInformation + vbOKOnly, "Warning .."
    End If
    MyErr:
    Resume Next
    End Sub

    Thân
     

    Các file đính kèm:

    #5
  6. adam_tran

    adam_tran Steel Partner

    Bài viết:
    1,373
    Đã được thích:
    32
    Nơi ở:
    Goooogle
    Dùng ngay Validation cũng được đấy! Bài này đã có người hướng dẫn hình như khá lâu rồi. Tôi xin phép mô tả sơ lại cách làm (cho các bạn chưa rành Excel)
    Giả sử bạn không muốn nhập dữ liệu trùng trong cột A, bạn chọn cột A, vào Data - Validation, trong mục Setting chọn Custome, nhập vào:
    =COUNTIF(A:A;A1)<=1

    Giải thích: Validation sẽ đếm giá trị trong ô hiện hành bằng hàm COUNTIF (ở đây là A1, vì công thức không cố định A1 nên sang ô khác nó sẽ là A2, A3....) trong tất cả cột A, ràng buộc điều kiện chỉ nhỏ hơn hoặc = 1. (Hoặc là nhỏ hơn 2 cũng được). Do đó, nếu bạn nhập trùng 2 giá trị thì nó sẽ báo lỗi của Validation.
    Lưu ý: Nó sẽ không có tác dụng nếu bạn dùng lệnh copy - paste, cũng giống như các Validation khác.
     
    #6
  7. minhson07

    minhson07 Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    Tp.HCM
    Chào bạn,
    Cách làm này áp dụng xét trùng khóa của tất cả các cột trong excel, có cách nào mình chỉ xét trên 1 cột nào đó thôi không ?

    Cám ơn bạn

    Chào bạn,
    Cách làm này áp dụng xét trùng khóa của tất cả các cột trong excel, có cách nào mình chỉ xét trên 1 cột nào đó thôi không ?

    Cám ơn bạn
     
    #7
  8. truongmyngoc

    truongmyngoc Thành viên sơ cấp

    Bài viết:
    92
    Đã được thích:
    0
    Nơi ở:
    quảng ngãi
     
    #8
  9. quangtinit

    quangtinit Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    quảng ngãi
    Làm sao để xét theo hàng vậy, nhờ các bạn hướng dẫn mình với, cảm ơn

    Làm sao để xét theo hàng vậy, nhờ các bạn hướng dẫn mình với, cảm ơn
     
    Last edited: 20 Tháng mười 2011
    #9

Chia sẻ trang này