[[20070124104905]] 『ヘッダ編集のVBAが反映されない』(亜麻) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ヘッダ編集のVBAが反映されない』(亜麻)

 環境:OS2000SP4 Excel2000

 こんにちわ。
 早速ですが、表題の件につきましてお願いいたします。

 毎月張替えの壁面表示及びチェックリストシートを集めたブックがあります。
 社内規定で書式が決まっており、上部に和暦表示することになってますので、仕方なくヘッダに手入力で和暦を入れておりました。
 が、結構な数なので自動更新できないかな、と以下のようなVBAを組んでみたのですが上手くいきません。

  Private Sub Workbook_BeforePrint(Cancel As Boolean)
  ActiveSheet.PageSetup.CenterHeader = Format(Date, "ggge年m月")
  End Sub

 既存シートは全てヘッダ・フッタ共にページ設定のヘッダ・フッタタブにて記入済みの状態です。

 新規シートで試しても上手く設定されませんでした・・・。
 何か構文間違いでもしてますのでしょうか?
 また、月が変われば自動更新するものなのでしょうか。

 ・・・素直に行列でヘッダ指定し直したほうが早いのかなとも思うのですが・・・。

 宜しくお願いいたします。

 コードをThisWorkbookモジュールに書かれていますか?そうでないと動きません。
 シートを複数選択しても一つ目のシートのヘッダーしか書き換わらないので
 下のようにしてみてください。ThisWorkbookモジュールにコピペ。

 Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Dim Sh As Worksheet
    For Each Sh In ActiveWindow.SelectedSheets
        Sh.PageSetup.CenterHeader = Format(Date, "ggge年m月")
    Next
 End Sub
 (やっちん)


  ありがとうございます。
  なるほど、これで複数選択できるのですね。どうしたものかと思っていたのですが。

  モジュールは間違いなくThisWorkbookに書き込みしてあります。

  先ほど、同一環境の他PCで試させて頂いたところ無事動作確認できました。
  が。
  該当PCのExcelなのですが。
  セキュリティも中になっていたので(先ほども確認しました)、問題はないと思っていたのですが・・・
ファイルを開く時に警告ダイアログが出ていないことに今気づきました。
(動作確認したPCでは出ていました)
  チェックの付け替えでもまだ反応がないようであれば、アプリケーションの修復を試してみようと思います。
  有難うございました。

  解決です。(亜麻)  

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.