• 締切済み

VBAの定義と印刷について

VBAで下記の様に定義をして印刷していますが、sheet"AAA","BBB"と同じく 新しいsheet"DDD"もの一緒に印刷したい場合の定義はどうなるのでしょう!教えて頂けますでしょうか。 よろしくお願いします。 別sheetの"sheet1"A列 AAA,BBB,CCC          B列 1,2,3  として印刷フラッグがある。 VBAでは Sub sheet1印刷() CNT = 4 CNT1 = 1 CNT2 = 1 TAKE = 0 CK = 30 Do Until CNT2 = CNT Do Until CNT1 = 4 If Sheets("sheet1").Cells(CNT1, 1) = Sheets("sheet1").Cells(CNT2, 3) Then TAKE = Sheets("sheet1").Cells(CNT1, 2) Select Case TAKE Case 1: Sheets("AAA").PrintOut Copies:=1 Case 2: Sheets("BBB").PrintOut Copies:=1 Case 3: Sheets("CCC").PrintOut Copies:=1 End Select CNT1 = 1 Exit Do Else: CNT1 = CNT1 + 1 End If Loop CNT2 = CNT2 + 1 Loop End Sub

みんなの回答

  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.3

すみません No.2で【保守】以降に訂正です。 【保守】 次に一つ増やすときは、CNT = 5 の数字を一つ増やし、 Case 4:のあとにCaseの数字を一つ増やし 「Case 5: Sheets("[あらたなシート名]").PrintOut Copies:=1」の文を挿入して下さい。

fukaideep
質問者

お礼

ありがとうございました。印刷できました。 今後も宜しくお願いします。

  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.2

こんにちは 元々のマクロを利用するなら、下記の2行を矢印の後のように修正。 CNT = 4 → CNT = 5 Do Until CNT1 = 4 → Do Until CNT1 = CNT それと Select Case TAKEからEnd Selectまでの空いている行に下記を追加。 Case 4: Sheets("DDD").PrintOut Copies:=1 【保守】 次に一つ増やすときは、CNT = 5 の数字を一つ増やし、 Case 4:のあとにCaseの数字を一つ増やし 「Case [CNTの数字]: Sheets("[あらたなシート名]").PrintOut Copies:=1」の文を挿入して下さい。

  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.1

こんにちは このマクロで印刷されていたということなので、ちゃんと動いているということを前提にC列目には何がありますか? >If Sheets("sheet1").Cells(CNT1, 1) = Sheets("sheet1").Cells(CNT2, 3) Then 上記の Cells(CNT2, 3)の「3」はC列を表していると思うので。

fukaideep
質問者

補足

ありがとうございます。質問には書き忘れたが下記のようになっています。 別sheetの"sheet1"A列 B列 C列             AAA 1  AAA             BBB 2  CCC             CCC 3          よろしくお願いします。

関連するQ&A