前提・実現したいこと
現在マクロでセルに入力された内容を印刷しようとしているのですが、
印刷プレビューの際に桁数が多いセルはナンバー記号が表示されます。
理想としてはナンバー記号ではなく数値が表示されて欲しいのですがうまくいきません。
よろしくお願い致します。
発生している問題・エラーメッセージ
####### と印刷プレビューで表示されます。 理想は10000.00と表示
該当のソースコード
VBA
1With TEST_SHEET 2 .Rows.AutoFit 3 .Columns.AutoFit 4 .PrintOut Preview:=True, ActivePrinter:="プリンター名" 5End With
試したこと
列幅の問題かと思いAutoFitをしました。
結果、プレビュー前はナンバー記号にならず正常に表示されていますが
印刷プレビューにするとナンバー記号が表示されてしまいます。
補足情報(FW/ツールのバージョンなど)
Excel2010
表示形式は何にしていますか?
タグにExcelを追加しましょう。
ご回答ありがとうございます。タグを追加致しました。
format関数を使用して#,##0.00としています。
ん?そうすると「理想は1000000と表示」と食い違っちゃいますが・・・。
失礼しました。10000.00でした
内容を編集します。
カンマ編集されるので、「1,000,000.00」では?
情報不足ですいません。
その前にNumberFormatLocal = "0.00"としていました。
ですのでFormatは不必要でした。
ということは「理想は1000000.000」?NumberFormatLocal = "0.000"をやっているのはどこなんですか?
NumberFormatLocal = "0.000"ではなくNumberFormatLocal = "0.00"でした。
情報が整理出来ていない状態でご質問してしまい、申し訳ございません
NumberFormatLocal = "0.00"はセルに値を入力する前です。
当方2013環境ですが、再現しません。セル結合とかしていないでしょうか?
セルの結合はしていません。
印刷設定として
With TEST_SHEET.PageSetup
.Zoom = False
.FitToPagesWide = 1
.CenterHorizontally = True
End With
としています。
もしかすると印刷プレビューを実施後AutoFitの処理が動いているのかもしれません。
マクロを通さない場合は問題ないのでしょうか?メニューからプレビューを表示。
状況の切り分けと、必要な情報は全て出したほうが解決は早いかと思います。
メニューから印刷プレビューを実施したのですが、ナンバー記号で表示されます。
セル幅を十分に広くしてもそうなるのですか?
手動でセル幅を広げると正常に表示されます。
となると印刷マクロのところで何かをやっている可能性があるので、一連の処理を提示していただいた方がよいですね。
流れとしては
1.改ページの設定
.Rows(30).PageBreak = xlPageBreakManual
2.別シートから取得した値をTEST_SHEETのセルに挿入
With TEST_SHEET
.Cells(2, 6).Font.Size = 23
.Cells(2, 6).Font.Bold = True
.Cells(2, 6).NumberFormatLocal = "0.00"
.Cells(2, 6) = hoge
End With
3.印刷設定
With TEST_SHEET.PageSetup
.Zoom = False
.FitToPagesWide = 1
.CenterHorizontally = True
End With
With TEST_SHEET
.Rows.AutoFit
.Columns.AutoFit
.PrintOut Preview:=True, ActivePrinter:="プリンター名"
End With
上記が一連の流れになります。
再度実施する際には
With TEST_SHEET
.ResetAllPageBreaks
.Cells.Clear
End With
としています。
情報ありがとうございます。できれば質問を編集してコードを追加してくださいね。
回答2件
あなたの回答
tips
プレビュー