
Sub Print_Out_1()
'セルに値を設定しながら連続印刷する。印刷対象:アクティブシート
Dim Message As Long
Message = MsgBox("印刷してもいいですか??", vbOKCancel, "メディカルG")
If Message = vbOK Then
Application.ScreenUpdating = False
ActiveSheet.Unprotect Password:="0630"
ActiveSheet.PageSetup.PrintArea = "B11:O30"
'定数
Const conStart As Long = 1 '開始
Const conStep As Long = 1 '間隔
Const conCell As String = "K7" 'セル番地
'変数
Dim i As Long
Dim conEnd As Integer '終了
With Application
.ScreenUpdating = False
conEnd = Val(.ActiveSheet.Range(conCell).Value)
If conEnd >= 1 Then
For i = conStart To conEnd Step conStep
Range(conCell).Value = i '←追加コード
ActiveSheet.PrintOut
Next
End If
.ScreenUpdating = True
End With
Application.ScreenUpdating = True
MsgBox "印刷が完了しました。"
ActiveSheet.PageSetup.PrintArea = False
ActiveSheet.Protect Password:="0630"
End If
End Sub
のようなコードが書かれたExcelがあります。
通常にXを押してExcelを閉じると何故か次に立ち上げて使用した時、数式が消えてしまいます。
消えないようにしたいのですがわかりません。教えて頂けないでしょうか・・・
No.1ベストアンサー
- 回答日時:
こんばんは
>数式が消えてしまいます。
何処の数式でしょうか?K7セルならば
Range(conCell).Value = i '←追加コード
K7セルに書き込んでいますね 目的は?
もし、印刷の内容に必要な事ならば(印刷範囲に入っていない気がしますが)違うセルに変更するか・・・
VBAコードを下記のように変えてみてください
式を一旦 変数に入れ 処理の最後に戻して(書き込み)います
Sub Print_Out_1()
'セルに値を設定しながら連続印刷する。印刷対象:アクティブシート
Dim Message As Long
Message = MsgBox("印刷してもいいですか??", vbOKCancel, "メディカルG")
If Message = vbOK Then
Application.ScreenUpdating = False
ActiveSheet.Unprotect Password:="0630"
ActiveSheet.PageSetup.PrintArea = "B11:O30"
'定数
Const conStart As Long = 1 '開始
Const conStep As Long = 1 '間隔
Const conCell As String = "K7" 'セル番地
'変数
Dim i As Long
Dim conEnd As Integer '終了
Dim tmp_Formula As String
'変数に入れる
tmp_Formula = ActiveSheet.Range(conCell).Formula
With Application
.ScreenUpdating = False
conEnd = Val(.ActiveSheet.Range(conCell).Value)
If conEnd >= 1 Then
For i = conStart To conEnd Step conStep
Range(conCell).Value = i '←追加コード
ActiveSheet.PrintOut
Next
End If
.ScreenUpdating = True
End With
Application.ScreenUpdating = True
MsgBox "印刷が完了しました。"
'戻す
ActiveSheet.Range(conCell).Formula = tmp_Formula
ActiveSheet.PageSetup.PrintArea = False
ActiveSheet.Protect Password:="0630"
End If
End Sub
ありがとうございます。
できました。助かりました・・・;;
書き込み?
まだまだ初心者でどこが悪いのかさっぱりわからなかったので・・・;;
本当にたすかりました・・m(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
印刷要求順番と印刷出力順番が...
-
VBSでExcelファイル印刷時のプ...
-
プリンタの印刷ジョブを削除し...
-
vbaでPDFファイルが印刷されない
-
印刷ダイアログを表示させない方法
-
印刷ダイアログを表示させたくない
-
VBAで印刷スプール終了の判定を...
-
PHPでPDFファイルの直接印刷
-
出力するプリンタを指定したい。
-
スプレッド(Spread 6) で縮小...
-
ミニチュアCDの作り方を教えて...
-
マクロで封筒を自動印刷
-
A4の2枚をA3の1枚にする編集方法?
-
VBAで印刷の成功判定
-
VB.NETで罫線付きのデータを印...
-
VB6上から印刷ダイアログを表示...
-
マクロコードについて
-
エクセルのVBAでプリンタを変更...
-
2回以上PDFをコピーや印刷がで...
-
PHPでPDFの自動印刷
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
2回以上PDFをコピーや印刷がで...
-
印刷ダイアログを表示させない方法
-
印刷要求順番と印刷出力順番が...
-
印刷ダイアログを表示させたくない
-
プリンターを指定して印刷するには
-
クリレポのプリンタ設定について
-
vbaでPDFファイルが印刷されない
-
VBAで印刷の成功判定
-
PHPでPDFファイルの直接印刷
-
ACCESSで設定した帳票の用紙サ...
-
EXCELファイルの複数ダウンロー...
-
A4の2枚をA3の1枚にする編集方法?
-
オートメーションエラー(214741...
-
VBAで印刷スプール終了の判定を...
-
VBからプリンタに出力する時に...
-
VB2008で0ページの印刷ジョブを...
-
ActiveReportsを使って[印刷ダ...
-
Eclipseを使ってソースを印刷し...
-
Javaから直接プリンターへ印刷...
-
VBAにて指定したセルをプルダウ...
おすすめ情報