Office関連

[Excel VBA]PrintPreview後に印刷するとCtrl+;の日付形式が変わる?

MSDNフォーラムで面白い質問がありました。

・Excel VBA で印刷プレビューを表示し、印刷すると、日付入力のショートカットキーで表示される日付のフォーマットが変わってしまう。
http://social.msdn.microsoft.com/Forums/ja-JP/vbajp/thread/74240763-9b9c-4fcc-838b-45e5f6916f4f

1. Excelで選択中のセルに日付を入力するショートカットキー「Ctrl キー + ; (セミコロン)」、普通なら「yyyy/m/d」形式で日付が入力されるところ、

ExcelVBA_PrintPreview_01

2. 「ActiveSheet.PrintPreview」で印刷プレビューを表示し、

ExcelVBA_PrintPreview_02

3. 「印刷」を実行した後に、

ExcelVBA_PrintPreview_03

4. 「Ctrl キー + ; (セミコロン)」で日付を入力すると、日付が「m/d/yyyy」形式になる。

ExcelVBA_PrintPreview_04

という質問です。
Windows 7(x86) + Excel 2013(x86)環境で試してみると、たしかに質問者さんが仰っている通りの現象が起こりました。

ファイルタブの印刷からは同じ現象は起きず、個人的にはExcelの仕様というかバグのように思います。

とりあえず、「PrintPreview」ではなく「Application.CommandBars.ExecuteMso “FilePrintPreview”」を使うと、同じ現象が発生しなかったので、「Ctrl キー + ; (セミコロン)」での日付入力を多用し、かつ旧来の印刷プレビューを使いたい方はExecuteMsoメソッドの方を使ってみてはいかがでしょうか。

Option Explicit

Public Sub Test1()
  Application.CommandBars.ExecuteMso "FilePrintPreview" '問題が発生しない
End Sub

Public Sub Test2()
  ActiveSheet.PrintPreview '問題が発生する
End Sub

関連記事

  1. Office関連

    指定したセル範囲をUTF-8やEUC-JP等のテキストファイルとして出力するExcelアドイン

    以前この記事で、指定したセル範囲をUTF-8やEUC-JP等のテキスト…

  2. Office関連

    ファイルをBase64エンコード・デコードするVBAマクロ

    以前書いたファイルのBase64エンコード・デコード処理を行うVBAマ…

  3. Office アドイン

    [Office用アプリ]販売者ダッシュボードが日本語化されました。

    当ブログでも下記ページなどで紹介しているSeller Dashboar…

  4. Office関連

    YouTube動画挿入アドイン for PowerPoint

    前回の記事でPowerPoint 2013でYouTubeの動画が挿入…

  5. Office関連

    指定したフォルダ内にあるExcelファイルを一つにまとめるVBAマクロ

    複数あるファイルを一つにまとめるにはどうすれば良いか?という質問をいた…

  6. Office関連

    MDB(Accessデータベース)ファイルを作成してデータを格納するExcelマクロ

    2012/2/22追記:下記で作成したMDBファイルを利用したWo…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

Time limit is exhausted. Please reload CAPTCHA.

最近の記事

アーカイブ

RapidSSL_SEAL-90x50
PAGE TOP