ExcelのシートにてAとBがあります。
Aシートは印刷面でBシートに宛名と印刷部数を設定しています。
マクロでボタンを押下すると、Bシートの宛名をコピーしてAシートに張り付け、
そのあとにBシートの印刷部数にある数字の枚数を印字。
これを宛名が空白セルにまで繰り返し処理を考えています。
次のように処理を考えていますが
ActiveWindow.SelectedSheets.PrintOut Copies:=Sheets("B").Range(Cells(5, mai)).Value
この部分で次のエラーがでて実行に失敗してしまいます。
実行時エラー'1004'
アプリケーション定義またはオブジェクト定義のエラーです。
また「Range(Cells(5, mai))」の部分を「Cells(5, mai)」と変更しても
実行時エラー'1004'
数値は1から32767の範囲でなければなりません。この数値の範囲で入力し直し、
もう一度行ってください。
とエラーが出てしまいます。
どのようにすれば別シートのセルの値を印刷枚数として設定できるか
ご教授の程宜しくお願い致します。
======
Dim ate As Integer '宛名
Dim mai As Integer '印刷枚数
Dim A As Worksheet 'Aシート
Dim B As Worksheet 'Bシート
ate = 2
mai = 2
Set st = Sheets("A")
Set sc = Sheets("B")
B.Activate
Cells(ate, 2).Select
Selection.Copy
A.Activate
Range("A1").Select
ActiveSheet.Paste
B.Activate
Cells(ate, 2).Select
Do While ActiveCell.Value <> ""
mai = Cells(5, mai)
A.Activate
ActiveWindow.SelectedSheets.PrintOut Copies:=Sheets("B").Range(Cells(5, mai)).Value
mai = mai + 1
ate = ate + 1
B.Activate
Cells(ate, 2).Select
Selection.Copy
A.Select
Range("A1").Select
ActiveSheet.Paste
Loop
No.1ベストアンサー
- 回答日時:
こんなもんでいかがでしょう。
Dim ate As Integer '宛名の行位置
Dim A As Worksheet 'Aシート
Dim B As Worksheet 'Bシート
ate = 2
Set A = Sheets("A")
Set B = Sheets("B")
Do While B.Cells(ate, 2).Value <> ""
A.Range("A1").Value = B.Cells(ate, 2).Value
A.PrintOut Copies:=B.Cells(ate, 5).Value
ate = ate + 1
Loop
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) 3個のfileのセルデータを1個のfileのセルに貼り付けるVBAコードですが。 1 2023/02/20 09:21
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Visual Basic(VBA) 複数csvを横に追加していくマクロについて 2 2023/04/25 09:19
- Visual Basic(VBA) Sheet1のA列にコードB列にメアド、Sheet2のB列にコード一覧とD列にメアド一覧があり、Sh 3 2022/10/19 11:57
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) 【前回の続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/16 16:44
このQ&Aを見た人はこんなQ&Aも見ています
-
新NISA制度は今までと何が変わる?非課税枠の拡大や投資対象の変更などを解説!
少額から投資を行う人のための非課税制度であるNISAが、2024年に改正される。おすすめの銘柄や投資額の目安について教えてもらった。
-
マクロで印刷→セルの値から部数変更するには
Excel(エクセル)
-
印刷枚数をセルの数値としたい
Excel(エクセル)
-
Excel マクロ 選択セルの値の枚数印刷かつページ数をセルに表記
Excel(エクセル)
-
-
4
印刷枚数を指定して印刷(印刷しないシートを含む場合)
Visual Basic(VBA)
-
5
【Excel】セルの値を印刷枚数に設定orセルの数値通りに繰り返し表示したい
Excel(エクセル)
-
6
エクセルでチェックボックスを使用してシートの抽出及び一括印刷
Excel(エクセル)
-
7
エクセルで印刷部数をセルに表示させたい
その他(Microsoft Office)
-
8
条件によって印刷するシートを変える方法 EXCEL-VBA
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで同じシートのコピーを一...
-
エクセルVBAでパスの¥マークに...
-
エクセルの複数シートの保護を...
-
EXCEL:同じセルへどんどん足し...
-
シートの保護のあとセルの列、...
-
別シート参照のセルをシート毎...
-
VBAで条件によりフォントサイズ...
-
VBAでシートコピー後、シート名...
-
複数シートの特定の位置に連番...
-
エクセルでファイル保存時に複...
-
シート名ではなく、相対位置で...
-
エクセルでシート名を自動入力...
-
前の(左隣の)シートを連続参...
-
エクセルで複数設定したハイパーリンク先...
-
エクセルで前のシートを連続参...
-
excelでシート毎の最終更新日を...
-
EXCEL VBAで別のシー...
-
複数シートの色付きセルがある...
-
Accessのスプレッドシートエク...
-
シートを追加・名前を次月に変...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで同じシートのコピーを一...
-
エクセルの複数シートの保護を...
-
Excelで金銭出納帳。繰越残高を...
-
エクセルでファイルを開いたと...
-
EXCELで1ヶ月分の連続した日付...
-
エクセルVBAでパスの¥マークに...
-
EXCEL:同じセルへどんどん足し...
-
シートの保護のあとセルの列、...
-
別シート参照のセルをシート毎...
-
エクセルで前のシートを連続参...
-
前の(左隣の)シートを連続参...
-
EXCELで同一フォーマットのシー...
-
VBAでシートコピー後、シート名...
-
Excel 連番を入力する方法
-
エクセル 計算式も入っていない...
-
エクセルで前シートを参照して...
-
エクセルでシート名を自動入力...
-
Accessのスプレッドシートエク...
-
複数シートの特定の位置に連番...
-
エクセルのシート名をリスト化...
おすすめ情報
Set st = Sheets("A")
Set sc = Sheets("B")
この部分は
Set A = Sheets("A")
Set B = Sheets("B")
の間違いです。