Công thức để tiêu đề tự động nhảy khi mình lọc, help me!!! (1 người xem)

Người dùng đang xem chủ đề này

thanhhong.hr

Thành viên chính thức
Tham gia
5/2/15
Bài viết
50
Được thích
1
Giới tính
Nữ
Nghề nghiệp
Nhân viên nhân sự
Em muốn khi mình lọc từng bộ phận cột B thì ô B2 sẽ tự động nhảy theo, mọi nguoi chỉ giúp em với ạ!
 

File đính kèm

Em muốn khi mình lọc từng bộ phận cột B thì ô B2 sẽ tự động nhảy theo, mọi nguoi chỉ giúp em với ạ!
1cách để bạn tham khảo( Không phải hàm)
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$2" Then
        If Target.Value <> Empty Then Call macro1
        If Target.Value = Empty Then Call macro2
    End If
End Sub

Sub macro1()
    Range("A3:C1000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
                                     Range("H1:H2")
End Sub
Sub macro2()
    With ActiveSheet
        If .FilterMode Then .ShowAllData
    End With
End Sub
 
Lần chỉnh sửa cuối:
1cách để bạn tham khảo( Không phải hàm)
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$2" Then
        If Target.Value <> Empty Then Call macro1
        If Target.Value = Empty Then Call macro2
    End If
End Sub

Sub macro1()
    Range("A3:C1000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
                                     Range("H1:H2")
End Sub
Sub macro2()
    With ActiveSheet
        If .FilterMode Then .ShowAllData
    End With
End Sub

Chào bạn

Cho mình hỏi sao code của bạn chỉ dùng 1 End If cho 3 IF mà không báo lỗi vậy?
 
bạn ơi mình làm mà không được cơ
 
Chào bạn

Cho mình hỏi sao code của bạn chỉ dùng 1 End If cho 3 IF mà không báo lỗi vậy?

Xem lại đoạn code
Private Sub Worksheet_Change(ByVal Target As Range)
If
Target.Address = "$B$2" Then
If Target.Value <> Empty Then Call macro1
If Target.Value = Empty Then Call macro2
End
If
End Sub

Chú ý
1. VB nói chung có cấu trúc mỗi lệnh 1 dòng.

Nếu lệnh quá dài muốn xuống dòng thì cuối dòng phải có dấu cách và dấu gạch dưới ( _ ).

Nếu viết nhiều lệnh cùng dòng thì phải phân cách nhau dấu hai chấm (:).

2. Lệnh If có 2 cách viết
+ a. Viết trên 1 dòng
If <điều kiện> then Các_lệnh_1 else Các_lệnh_2

+ b. Viết trên nhiều dòng
If <điều kiện> then
Các_lệnh_1
else
Các_lệnh_2
end if

(Các_lệnh_1 và Các_lệnh_2 có thể là 1 hay nhiều lệnh)

Như vậy 2 lệnh If sau của code trên là dạng viết trên 1 dòng nên kg cần end if.
 

Bài viết mới nhất

Back
Top Bottom