XEM GIÚP EM ĐOẠN CODE ẨN CỘT THEO ĐIỀU KIỆN

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

thientrieuqs

Thành viên mới
Tham gia
18/8/22
Bài viết
24
Được thích
1
Code như sau ạ: Ẩn cột có điều kiện là từ cột F tới cột AIE, hàng F4 tới AIE4, có chữ Qty thì ẩn cột. Sau đó ấn button cái nữa thì trả về như cũ
Code chạy lúc oke, lúc thì báo : Object variable or with block variable not set ( Chưa đặt biến hay gì gì đấy ạ )
Các bác giúp em
Sub Ancot_Level5()
Dim Rng As Range, Rng1 As Range
Set Rng = Range("F4:AIE4")
For Each Cll In Rng
If Cll.Value = "Qty" Then
If Rng1 Is Nothing Then
Set Rng1 = Cll
Else
Set Rng1 = Union(Rng1, Cll)
End If
End If
Next
Rng1.EntireColumn.Hidden = Not Rng1.EntireColumn.Hidden
End Sub
 
PHP:
Sub Ancot_Level5()
Dim Rng As Range, Rng1 As Range, Cll As Range

Set Rng = Range("F4:AIE4")
For Each Cll In Rng
    If Cll.Value = "Qty" Then
        If Rng1 Is Nothing Then
            Set Rng1 = Cll
        Else
            Set Rng1 = Union(Rng1, Cll)
        End If
    End If
Next
1 If Not Rng1 Is Nothing Then
    Rng1.EntireColumn.Hidden = Not Rng1.EntireColumn.Hidden
2    MsgBox Rng1.Cells.Count
3 Else
4    MsgBox "Mothing"
5 End If
End Sub
 
Upvote 0
PHP:
Sub Ancot_Level5()
Dim Rng As Range, Rng1 As Range, Cll As Range

Set Rng = Range("F4:AIE4")
For Each Cll In Rng
    If Cll.Value = "Qty" Then
        If Rng1 Is Nothing Then
            Set Rng1 = Cll
        Else
            Set Rng1 = Union(Rng1, Cll)
        End If
    End If
Next
1 If Not Rng1 Is Nothing Then
    Rng1.EntireColumn.Hidden = Not Rng1.EntireColumn.Hidden
2    MsgBox Rng1.Cells.Count
3 Else
4    MsgBox "Mothing"
5 End If
End Sub
Bác chỉ hộ em là cái code của em nó bị gì mà chạy lúc rất oke lúc tì báo lỗi thế bác
 
Upvote 0
Sorry các bác, code chạy oke rồi ạ. Tại lúc nãy em ngáo ngơ xoá dòng nên nó lỗi ạ
 
Upvote 0
. . . . , code chạy oke rồi ạ. Tại lúc nãy em ngáo ngơ xoá dòng nên nó lỗi ạ
Việc đầu tiên là xin chúc mừng bạn với thành tựu mới!
Thứ nữa: Xin nhắc bạn sẽ lỗi khi nhập (hay chép) tên cột sai chính tả, như QTy, QTY, . . .
Để ngừa chuyện này nên qui về 1 mối bỡi hàm UCase$()
Chúc bạn sẽ ngon giấc khi còn xài đứa con cưng này của bạn!
 
Upvote 0
Nhiều cột quá thì dùng cái này:

PHP:
Sub HideQtyColumns()
Dim lastColumn As Long
Dim qtyRow As Range
Dim hideRange As Range
lastColumn = Cells(4, Columns.Count).End(xlToLeft).Column
Set qtyRow = Range("F4", Cells(4, lastColumn))
qtyRow.AutoFilter Field:=1, Criteria1:="=*Qty*", Operator:=xlAnd
 If qtyRow.Columns(1).SpecialCells(xlCellTypeVisible).Count > 1 Then
     Set hideRange = qtyRow.Offset(1, 0).Resize(qtyRow.Rows.Count - 1, qtyRow.Columns.Count) _
         .SpecialCells(xlCellTypeVisible).EntireColumn
     hideRange.Hidden = True
End If
qtyRow.AutoFilter
End Sub
 
Upvote 0
Nhiều cột quá thì dùng cái này:

PHP:
Sub HideQtyColumns()
Dim lastColumn As Long
Dim qtyRow As Range
Dim hideRange As Range
lastColumn = Cells(4, Columns.Count).End(xlToLeft).Column
Set qtyRow = Range("F4", Cells(4, lastColumn))
qtyRow.AutoFilter Field:=1, Criteria1:="=*Qty*", Operator:=xlAnd
 If qtyRow.Columns(1).SpecialCells(xlCellTypeVisible).Count > 1 Then
     Set hideRange = qtyRow.Offset(1, 0).Resize(qtyRow.Rows.Count - 1, qtyRow.Columns.Count) _
         .SpecialCells(xlCellTypeVisible).EntireColumn
     hideRange.Hidden = True
End If
qtyRow.AutoFilter
End Sub
Như trung tá (Đại biểu Quốc hội) nói:
Có gì đó hơi sai sai thì phải?
 
Upvote 0
Như trung tá (Đại biểu Quốc hội) nói:
Có gì đó hơi sai sai thì phải?
Tùy theo bối cảnh.
Trong môi trường lập trình thì "sai sai" tức là "sai bấy", không chấp nhận được.
Trong môi trường Quốc hội của ông ta, hơi sai là chuyện thường tình. Không phải chỉ xảy ra ở VN. Ở nước ngoài Đại Biểu Quốc Hội lắm khi chửi bới nhau, văng tục, choảng nhau, rút súng bắn đoành đoành...

Riêng tôi thì thấy gã Tây con này viết tiêu đề hoa cả cụm mà chả ai buồn nhắc.
 
Upvote 0
Upvote 0
Tùy theo bối cảnh.
Trong môi trường lập trình thì "sai sai" tức là "sai bấy", không chấp nhận được.
Trong môi trường Quốc hội của ông ta, hơi sai là chuyện thường tình. Không phải chỉ xảy ra ở VN. Ở nước ngoài Đại Biểu Quốc Hội lắm khi chửi bới nhau, văng tục, choảng nhau, rút súng bắn đoành đoành...

Riêng tôi thì thấy gã Tây con này viết tiêu đề hoa cả cụm mà chả ai buồn nhắc.
Sorry bác, em không biết là không nên đặt tiêu đề như thế, nên em xin rút kinh nghiệm sau ạ
 
Upvote 0
Web KT

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

Back
Top Bottom