Không phải cao thủ nhưng trả lời cho bạn như sau:Tôi muốn ẩn dòng tự động theo điều kiện như trong file. Xin các cao thủ chỉ giúp. Cám ơn nhiều!
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 4 And Target.Cells.Count = 1 Then
If Target.Value = "TP" Then
MyAddress = Target.Address
Range(MyAddress).EntireRow.Hidden = True
End If
End If
End Sub
Nếu bạn đã viết thế thì sao không bám vào Target và viết, cần chi thêm biếnKhông phải cao thủ nhưng trả lời cho bạn như sau:
Bạn chép đoạn code sau vào cửa sổ VBA sheet1 nhé:
Bạn tham khảo thêm ở file đính kèmPHP:Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 4 And Target.Cells.Count = 1 Then If Target.Value = "TP" Then MyAddress = Target.Address Range(MyAddress).EntireRow.Hidden = True End If End If End Sub
Thân
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 4 And Target.Cells.Count = 1 Then
Target.EntireRow.Hidden = Target.Value = "TP"
End If
End Sub
Bạn thử dùng code này:Cho minh hỏi ! Nếu cột D là giá trị trả về do hàm, thì code ẩn dòng theo điều kiện sẽ thế nào ?
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Cells(Target.Row, 4).Value > 100 Then
Target.EntireRow.Hidden = True
End If
End Sub
Bạn thử dùng code này:
Giả sử nếu cột D có cell nào giá trị lớn hơn 100 thì ẩn nó đi
ThânMã:Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next If Cells(Target.Row, 4).Value > 100 Then Target.EntireRow.Hidden = True End If End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Cells(Target.Row, 4).Value > 100 Then
Target.EntireRow.Hidden = True
[COLOR=Blue]Else
Target.EntireRow.Hidden = False[/COLOR]
End If
End Sub
AutoFilter trong trường hợp này cũng rất tốt, tuy nhiên vẫn phải đặt điều kiện cho Target chứ ---> Tức phải "nói" sao cho code nó hiểu rằng: "Khi ta gõ vào đâu đó thì mới chạy code" ---> Chả lẽ ta làm bất cứ điều gì thì code cũng chạy à? Thế thì hóa ra lại.. mệt xácMình sử dụng AutoFilter được không?
PHP:Private Sub Worksheet_Change(ByVal Target As Range) Range("A1").CurrentRegion.AutoFilter 4, "<>TP" End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 4 And Target.Cells.Count = 1 Then
Range([D1], [D65536].End(xlUp)).AutoFilter 1, "<>TP", , , False
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
If Cells(Target.Row, 4).Value > 100 Then
Target.EntireRow.Hidden = True
Else
Target.EntireRow.Hidden = False
End If
End Sub
Target.EntireRow.Hidden = Cells(Target.Row, 4).Value > 100
Vâng đúng vậy ! Mình có 1 (Bảng tổng hợp hàng hoá) được trích ra từ (Bảng danh mục) với điều kiện giá > 100.000. Hiện tại mình dùng cách dữ kiện nào không thỏa mãn thì để trắng. Vì thế mình muốn có 1 code nào đó để ẩn những giá trị không thõa mãn đó đi (Tất nhiên khi giá của mặt hàng thay đổi > 100.000 thì nó lại hiện ra). Như vậy phải làm sao, mong mọi người giúp đỡ !1/Trang này link tới 1 trang nguồn khác, khi trang nguồn thay đổi nó sẽ ảnh hướng tới kết quả ẩn hiện (Chúng ta ngoài trả lời câu hỏi còn phải đoán câu hỏi nữa mới mệt chứ, mình phân vân từ câu hỏi bài 7 ??? Bạn xem lại có thấy mình có lý không)
2/Code rút dữ liệu từ nguồn khác và điền vào sheet này.
Làm sao thì cũng khó nói, vì chưa thấy file của bạn!Vâng đúng vậy ! Mình có 1 (Bảng tổng hợp hàng hoá) được trích ra từ (Bảng danh mục) với điều kiện giá > 100.000. Hiện tại mình dùng cách dữ kiện nào không thỏa mãn thì để trắng. Vì thế mình muốn có 1 code nào đó để ẩn những giá trị không thõa mãn đó đi (Tất nhiên khi giá của mặt hàng thay đổi > 100.000 thì nó lại hiện ra). Như vậy phải làm sao, mong mọi người giúp đỡ !