
いつもお世話になっております。
A1の数字の分だけ印刷するマクロを以下のように理解しました。
Dim n As Integer
n = Application.WorksheetFunction.Sum(Worksheets("Sheet3").Range("A1"))
ActiveWindow.SelectedSheets.PrintOut Copies:=n, Collate:=True
これとは別に、
B1の数字(値)を参照して、
”マクロ2”というマクロの実行回数を指定したいのです。
単に一回実行するだけなら
Application.Run "マクロ2"
ですね。
実行回数を指定する場合、
どのように記述すればよいかご教示ください。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
>A1の数字の分だけ印刷するマクロを以下のように理解しました。
A1に確実に数値が入力されているなら、
Dim n As Integer
n = Worksheets("Sheet3").Range("A1")
だけで十分です。
複数のセルが対象なら、sum関数(Application.WorksheetFunction.Sum() )を利用するのも良いでしょう。
繰返しなら、
For i=1 to n
Call マクロ名
Next
No.2
- 回答日時:
こんにちは。
>A1の数字の分だけ印刷するマクロを以下のように理解しました。
コードをみる限りは、かなり変則的なものだと思います。確かに、SUMには、特殊な機能があるから、そのように、セルの代入値に対して、数値のみが、n に代入できますが、VBAらしくないコードです。
単に、Val 関数だけでもよいような気がします。
n =Val(Worksheets("Sheet3").Range("B1").Value)
Val関数に批判的な人もいますから、
If IsNumeric(Worksheets("Sheet3").Range("B1").Value) Then
n = CInt(Worksheets("Sheet3").Range("B1").Value)
End If
でも、
「実行回数を指定する場合」、って、
>ActiveWindow.SelectedSheets.PrintOut Copies:=n, Collate:=True
プリントアウトするのですから、n の値で回数が決まるのではありませんか?
それに、Application.Run は、同じブック内なら、Call か、そのまま、プロシージャ名を指定すれば、Private キーワードが付いていない限りは、呼び出せるはずです。それとも、プリント印刷のシートの紙の順序は決めて出したいというのでしょうか?もし、そうなら、n は、1回にして、その印刷のPrintOut の部分をループさせ、サブルーチンにして、引数で回数を決めさせるようにすればよいと思います。
ありがとうございました。
何通りかの記述方法があるのですね。
今回は印刷するマクロを指定回数実行するのではなく、
別のマクロを指定回数実行させたかったのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで特定の列が0表示の場...
-
特定のPCだけ動作しないVBAマク...
-
一つのTeratermのマクロで複数...
-
Excel マクロ VBA プロシー...
-
メッセージボックスのOKボタ...
-
ExcelのVBA。public変数の値が...
-
Excel_マクロ_現在開いているシ...
-
Excelのセル値に基づいて図形の...
-
wordを起動した際に特定のペー...
-
Excel マクロでShearePoint先の...
-
Excel・Word リサーチ機能を無...
-
ソース内の行末に\\
-
ExcelVBAでPDFを閉じるソース
-
マクロで空白セルを詰めて別シ...
-
オートフィルターとExcelマクロ...
-
Excelで特定の文字のところで自...
-
TERA TERMを隠す方法
-
Excel VBAからAccessマクロを実...
-
【Excel】複数のマクロをまとめ...
-
エクセル VBA実行中のApplicati...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで特定の列が0表示の場...
-
特定のPCだけ動作しないVBAマク...
-
メッセージボックスのOKボタ...
-
Excel_マクロ_現在開いているシ...
-
一つのTeratermのマクロで複数...
-
マクロの連続印刷が突然不可能...
-
ExcelのVBA。public変数の値が...
-
Excel マクロ VBA プロシー...
-
Excel・Word リサーチ機能を無...
-
エクセルに張り付けた写真のフ...
-
Excelのセル値に基づいて図形の...
-
TERA TERMを隠す方法
-
マクロ実行時エラー
-
ExcelVBAでPDFを閉じるソース
-
wordを起動した際に特定のペー...
-
特定文字のある行の前に空白行...
-
Excel マクロでShearePoint先の...
-
エクセルで縦に並んだデータを...
-
マクロ実行時、ユーザーフォー...
-
ソース内の行末に\\
おすすめ情報