ladykiller81
Thành viên chính thức


- Tham gia
- 13/7/08
- Bài viết
- 69
- Được thích
- 3
Thân chào cả nhà "giaiphapexcel" cho e hỏi là làm cách nào để biết dòng nào đang bị hide trong 1 sheet. Xin cảm ơn!
Private Sub Worksheet_Activate()
Dim rw As Range
For Each rw In Rows("1:65536")
If rw.EntireRow.Hidden = True Then
MsgBox " row bi an" & rw.Address
With rw
.EntireRow.Hidden = False
.Interior.ColorIndex = 6
End With
End If
Next rw
End Sub
Click chuột phải và Sheet tab, sẽ thấy View code, như hình này đây:hu hu, e mới chập chững học, nên không biết "chọn view code" ở chỗ nào, bác ST-lu chỉ e với, e cám ơn!
Mình dùng sự kiện Active sheet,PHP:Private Sub Worksheet_Activate() Dim rw As Range 2 For Each rw In Rows("1:65536") If rw.EntireRow.Hidden = True Then 4 MsgBox " row bi an" & rw.Address With rw 6 .EntireRow.Hidden = False .Interior.ColorIndex = 6 8 End With End If Next rw End Sub
Mình mới học VBA, tập tành tí code. Mình thấy rất chuối nhưng code chạy được bạn ạh
Bạn chạy tạm nhé
For Each rw In Range("A1:A65536")
Em cũng thử nghiệm hiện các dòng lên được rồi! Hihi. Nhưng em có 3 thắc mắc:
1/ Em muốn hiện những "cột ẩn" thì em sửa đoạn code trên: Row thàng column; rw thàng cl. Anh có thể nào ghép 2 đoạn code trên thàng 1 đoạn code được không anh?
2/ Nếu em thích các cột ẩn hiện lên là màu xanh thì em thay đổi con số 6 thàng con số 8. Vậy cho em hỏi: Làm cách nào em tìm được một bảng danh sách: số 6 -> vàng; số 8 -> màu xanh ...
3/ Các dòng màu vàng (xanh) khi đã hiện lên em không biết cách làm mất màu vàng của các dòng đó. Em xóa đoạn code màu vẫn không mất. Vậy em phải làm sao?
Em cảm ơn anh nhiều!
Sub Showhidden()
'
' Macro1 Macro
' Macro recorded 20-05-2009 by c
'
'
Activesheet.select
Dim rw As Range
Dim cl As Range
For Each rw In Range("A1:A65536")
If rw.EntireRow.Hidden = True Then
MsgBox "Hidden row is " & rw.Address
With rw
.EntireRow.Hidden = False
.Interior.ColorIndex = 6
End With
Else
If rw.Interior.ColorIndex = 6 Then
rw.Interior.ColorIndex = xlNone
End If
End If
Next rw
' Code sau de kiem tra cot an
For Each cl In Columns("A:IV")
If cl.EntireColumn.Hidden = True Then
MsgBox "Hidden column is " & cl.Address
With cl
.EntireColumn.Hidden = False
.Interior.ColorIndex = 8
End With
Else
If cl.Interior.ColorIndex = 8 Then
cl.Interior.ColorIndex = xlNone
End If
End If
Next cl
End Sub
Chi HYen17 ơi, em vẫn chưa biết làm cách nào để các dòng, cột ẩn đã hiện lên bị mất màu, vàng hoặc xanh (Trong trường hợp em cùng đoạn code của anh ST-Lu!).
Em cảm ơn chị.
Gữi bạn 1 thí nghiệm đơn giản để biết màu nào tương ứng với mã nào:2/ Nếu em thích các cột ẩn hiện lên là màu xanh thì em thay đổi con số 6 thàng con số 8. Vậy cho em hỏi: Làm cách nào em tìm được một bảng danh sách: số 6 -> vàng; số 8 -> màu xanh ...
!
Sub Test()
Dim i As Long
For i = 1 To 56
Cells(i + 1, 1).Interior.ColorIndex = i
Cells(i + 1, 2) = i
Next i
End Sub
(*) Không phải chị, mà là lão ông!
...
Hic, cháu xin lỗi . Cháu cảm ơn chú nhiều ! Để cháu test thử .