|
こんにちわ。
行番号が実際のWorkbookのIndexですので、非表示の個人用マクロブック等があれば、2番目に開いたファイルのIndexは3番目になります。
ログをとって対象を間違えていないか確認してみるのも1つの手です。
Sub Test()
Dim wb1 As Workbook, ws1 As Worksheet
Dim ws2 As Worksheet, II As Long, JJ As Long
'ログ表示用シート
Set ws2 = Application.Workbooks.Add.Worksheets(1)
'
For Each wb1 In Application.Workbooks
'ログ取り用ブック以外で処理
If Not wb1 Is ws2.Parent Then
II = II + 1: JJ = 1
With ws2.Cells(II, JJ)
.Value = wb1.Name
If wb1.Windows(1).Visible = False Then .Font.ColorIndex = 3
End With
For Each ws1 In wb1.Worksheets
JJ = JJ + 1
With ws2.Cells(II, JJ)
.Value = ws1.Name
Select Case ws1.Visible
Case xlHidden: .Font.ColorIndex = 5 '普通に非表示ならば青
Case xlVeryHidden: .Font.ColorIndex = 3 '非表示リストにものらない設定ならば赤
End Select
End With
Next
End If
Next
Set wb2 = Nothing: Set ws2 = Nothing
Set ws1 = Nothing
End Sub
|
|