三流君 ken3のmemo置き場

メモ置き場、保管庫として利用。まとまっていませんがヨロシク

挨拶・自己紹介:
失敗続きのAB型の変わり者 :三流プログラマー Ken3です
フリーのエンジニア・個人事業主です・・と書くと聞こえはイイが(それとなくカッコよく聞こえるが)、 現在は小さな案件の受注請負 と 短期派遣 で 日々つつましく?ほそぼそと暮らしてます。
(※詳細は[三流君 三流プログラマーとは?]を見てください)


広告:


[記事一覧、バックナンバーを見る]

QA110203 調査2 ウ.全てのシート に 対してマクロ VBAの処理を実行したい

ActiveWorkbook.Sheets.Count で シートの数
Activeworkbook.Sheets(n番目).Select で シートの選択(処理中シート、アクティブの切り替え)

取得・切り替え可能だったので、
単純に For の ループ で 1 から .Count番目まで処理を回してみました。

For n = 1 To ActiveWorkbook.Sheets.Count
Sheets(n).Select 'シートのn番目を選択
'シート単位で行いたい処理
'シート単位で行いたい処理
'シート単位で行いたい処理
Next

まぁ、こんな感じで作ってみました。

Sub Macro2()

'シートの数 ActiveWorkbook.Sheets.Count
'シートの選択 Activeworkbook.Sheets(番号でもOK).Select ※1から

    Dim n As Integer  'カウンター
    
    'シートの数だけループする
    For n = 1 To ActiveWorkbook.Sheets.Count
        Sheets(n).Select  'シートのn番目を選択
        Cells.EntireColumn.AutoFit  '列幅を自動調整
        Range("A1").Select  'カーソルをA1へ
    Next
    
End Sub

試行錯誤 イミディエイトで調べたり、デバッグしたり

いつものように ハマった動画は、下記のような感じです。


http://www.youtube.com/watch?v=wfhMeMIs8dU



全体の解説は http://ken3hitori.g.hatena.ne.jp/bbs/18?from=1 を見てください。