trantuonganh2008
Thành viên thường trực




- Tham gia
- 8/11/08
- Bài viết
- 305
- Được thích
- 53
Hi mọi người, Các bạn giúp mình sửa lại công thức này nhé:
Lần chỉnh sửa cuối:
Mình dùng hàm DSUM trong bài là tới 6 điều kiện lận. Giả sử ở F5 mình sửa lại là M930 thì tổng chỉ là 10 thôi (=L8). Nếu lấy tổng cộng trừ đi các kết quả ra kết quả còn lại thì quá dễ, nhưng mình thích cải tiến công thức hơn....
Xin các bạn chỉ giúp: VD Trong vùng A1:A500 để biết dữ liệu bị nhập trùng (bị lặp lại) có cách nào bảo Excel thông báo cho ta biết dự liệu này đã lặp lại lầm thứ mấy ...? được khộng (DL có thể là số, chữ hoặc ngày tháng năm).
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range([A9], Target)) Is Nothing And _
Intersect(Target, Range("A1:A8")) Is Nothing Then
Dim Rng As Range, sRng As Range, MyAdd As String, Dem As Byte
If IsDate(Target.Value) Then
Range("A1:A" & Target.Row).NumberFormat = "m/d/yyyy"
ThemHang 3
ElseIf IsNumeric(Target.Value) Then
ThemHang 2
Else
ThemHang 1
End If
Set Rng = Range("A1:A" & Target.Row + 9)
Set sRng = Rng.Find(Target.Value, , xlFormulas, xlWhole)
If Not sRng Is Nothing Then
MyAdd = sRng.Address
Do
Dem = Dem + 1
Set sRng = Rng.FindNext(sRng)
If sRng.Row = Target.Row Then Exit Do
Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
End If
MsgBox Dem + 1, , [a1].Value
ThemHang 9
End If
End Sub
Sub ThemHang(Num As Byte)
If Num < 7 Then
Rows(1).Insert Shift:=xlDown
[a1].Value = Choose(Num, "String", "Num", "Date")
Else
Rows(1).Delete
End If
End Sub