|
▼氷室 さん:
>問題はいろいろあると思うのですが、Sheet1とSheet2では項目数が変わり、
>非表示にする部分がずれてしまうのではないかという点でも煮詰まってしまいました。
これは開始のG列がズレるかも? ということですか?
Find と FindNext を使えばできると思います。
詳細はヘルプで調べてみてください。
Option Explicit
Sub Test()
Dim Fi As Variant
Dim St As Integer, En As Integer
'範囲指定ならRows(1)→Range("G1:BG1")に変更
Set Fi = Worksheets("Sheet1").Rows(1).Find _
("☆", , xlValues, xlWhole, , xlNext, False, False)
If Not Fi Is Nothing Then
St = Fi.Column
Else
Exit Sub
End If
Set Fi = Worksheets("Sheet1").Rows(1).FindNext(Fi)
If St <> Fi.Column Then
En = Fi.Column
Else
Exit Sub
End If
With Worksheets("Sheet2")
.Range(.Columns(St), .Columns(En)).Hidden = True
End With
Set Fi = Nothing
End Sub
|
|