topimg.jpg


Excelマクロで全ファイル・全シートで処理

全てのファイル、全てのシートに、ある特定の処理を繰り返し実行したいときに使うマクロを、初心者ながら書いてみた。処理を実行したいエクセルファイルを全て開いておかなくてはいけないのが難点。今度改善してみよう。今回のサンプルコードでは、繰り返し処理の内容は、ヘッダにファイル名とシート名をつけるというものだ。


●手順
①特定処理を実行したいエクセルファイルを全て開く
②以下の「サンプルコード」のマクロを何かしらのエクセルファイルにコピペ
③ToAllBook関数のマクロを実行

●サンプルコード(HTMLだとインデントが・・・)
'ヘッダをセットする関数。以下は、ヘッダ左部にファイル名、ヘッダ右部にシート名を設置
Sub HeaderSet() 
With ActiveSheet.PageSetup
.LeftHeader = "&F"
'.CenterHeader = ""
.RightHeader = "&A"
End With
End Sub


'全てのシートに適用
Sub ToAllSheet()
For Each Sheet In Worksheets
With Sheet
.Activate
Call HeaderSet 'シートごとに実行したい関数
End With
Next
End Sub


'全てのブックに適用
Sub ToAllBook()
For Each Workbook In Workbooks
With Workbook
.Activate
Call ToAllSheet '呼び出したブックの全てのシートに適用
ActiveWorkbook.Save 'ブックごとに保存
End With
Next
End Sub
スポンサーサイト

テーマ:ソフトウェア - ジャンル:コンピュータ

  1. 2011/04/07(木) 04:07:02|
  2. MSOffice
  3. | トラックバック:0
  4. | コメント:0
<<その月の第何週かをエクセルで計算 | ホーム | ImageJのマクロで数値データを文字列データに型変換するには>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバック URL
http://192168111.blog71.fc2.com/tb.php/59-b6e91b56
この記事にトラックバックする(FC2ブログユーザー)