• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:繰り返しの印刷処理を自動実行したいのですが)

繰り返しの印刷処理を自動実行したいのですが

このQ&Aのポイント
  • 請求書データベースというシートがあります。毎月の売り上げが入りますが、同じ会社でも月に何回も注文があることがあります。そこで以下のマクロを作りました。
  • 売上日から該当月のフィルターをかけて、表示させ、そのシート全体を作業用シートにいったんコピーします。作業用シートから重複する会社コードを除く会社コードリストを今月処理件数というシートにコピーします。
  • 次に今月処理件数のシート上で、会社コードが請求書データベースにコピーされます。その後、請求書データベース上の会社コードを参照してフィルターがかかり、その会社の売り上げ一覧が表示され、そこから印刷できる状態です。毎月の処理件数は月平均50~60件くらい入ってきます。

質問者が選んだベストアンサー

  • ベストアンサー
  • HohoPapa
  • ベストアンサー率65% (455/693)
回答No.2

自動実行2のコード群で繰り返される部分は Do~Loopの間です。 この繰り返しの中に印刷命令がありません。 コードの一部しか記載されていないこと シートのレイアウトが未詳なことから 提示のコードを詳しく追いかけることができませんが、 おそらく、次のようなコードになるものと思います。 Sub 自動実行2()  ThisWorkbook.Worksheets("請求書データベース").Unprotect  ThisWorkbook.Worksheets("今月処理件数").Unprotect  Dim i As Long, LastRow As Long  LastRow = Cells(Rows.Count, 2).End(xlUp).Row  i = 2 '<== 正しくは1かも????  Do   Range("A" & i).Value = _    Sheets("請求書データベース").Range("AD1").Value   call 条件フィルタ2    call 条件フィルタ1     call 印刷    i = i + 1  Loop Until i > LastRow  ThisWorkbook.Worksheets("今月処理件数").Protect  ThisWorkbook.Worksheets("請求書データベース").Protect AllowFiltering:=True End Sub むしろコードではなく ThisWorkbook.Worksheets("今月処理件数") ThisWorkbook.Worksheets("請求書データベース") のレイアウトとやりたいことを掲示しなおしたほうが 識者の方から より見やすいコードを提示してもらえるんじゃないかと思います。 レイアウト次第では、SQL文を使うことで AutoFilter を使わずに済むんじゃないかと思います。

shibushijuko
質問者

お礼

ご回答ありがとございました。 今一度、整理してから再質問させていただきます。

その他の回答 (1)

  • chayamati
  • ベストアンサー率41% (260/624)
回答No.1

お早うございます、すごい馬力ですね <call 印刷 ’請求書を作成、印刷するマクロ文が記述してあります。  肝心の「印刷」のマクロ文がありませんが?

shibushijuko
質問者

お礼

ご回答ありがとございました。 今一度、整理してから再質問させていただきます。

関連するQ&A