ここから本文です

マクロで繰り返し処理ができないで困っています。

アバター

ID非公開さん

2020/5/2809:56:31

マクロで繰り返し処理ができないで困っています。

Sub 印刷()
Dim print_start, print_end, counter As Integer
print_start = InputBox("印刷を開始する番号を入力してください。")
print_end = InputBox("印刷を終了する番号を入力してください。")

For counter = print_start To print_end
Cells(5, 7) = counter
Sheets(Array("送付鑑", "送金予定通知書", "配分予定通知書", "振込依頼書")).PrintOut
Next
End Sub

セル5,7の数を変更することでvlookupと組み合わせて更新したシートを4つ印刷するのですが、
2回繰り返したところで数値が固定されてうまく出力できません。
(レコード1番から4番まで印刷をかけると、1番、2番、2番、2番と出てしまいます)
お知恵を拝借したく、よろしくお願いいたします。

閲覧数:
20
回答数:
3
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

2020/5/2812:31:33

アクティブなシートをきりかえてあげないと

Cells(5, 7)
は変わらないと思いますが

このアドバイスでご自分で解決できるとよいと思います

無理なら返信ください

  • アバター

    質問者

    ID非公開さん

    2020/5/2812:47:21

    Cells(5, 7) のシートを、Worksheets("入力シート").Activateとして、
    nextで戻る度にアクティベートすることで何故かうまくいきました。
    一回ずつアクティブにしないと表示が安定してリフレッシュされないようです。
    ありがとうございました。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

プロフィール画像

カテゴリマスター

2020/5/2810:25:20

Dim print_start, print_end, counter As Integer
とは、
Dim print_start As Variant
Dim print_end As Variant
Dim counter As Integer
と同じ意味ですが、敢えてそうしていますか?

Dim print_start As Integer, print_end As Integer, counter As Integer

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

よこまやさん

2020/5/2810:06:02

ステップ実行してみてください。
printoutの行で
イミディエイトウィンドウに
? counter
と打ってみて値を確認して下さい。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる