• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:for~Next 構文の間に処理を追加したい。)

EXCEL VBAでfor~Next構文に処理を追加する方法

このQ&Aのポイント
  • EXCEL VBAでfor~Next構文の間に処理を追加する方法について教えてください。他人の作ったEXCELマクロを修正する必要がありますが、初心者のためうまくいきません。
  • 質問者はEXCEL VBAで、sheet1に条件を入力し、sheet2のセルに表示された内容をラベルに印刷するマクロを作成したいと考えていますが、for~Next構文の間に処理を追加する方法がわかりません。
  • もしblankの値が1の場合、内容の異なるセルを挿入したいと考えていますが、うまく実装できません。解決策を教えてください。

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

  • ベストアンサー
  • o_chi_chi
  • ベストアンサー率45% (131/287)
回答No.1

Next iとNextKの間に If blank="1" Then  処理 End If 処理はjループの中の処理 でどうでしょう?

thunder-sg
質問者

お礼

お礼が遅くなり申し訳ございません。 この方法はすでに試してみたのですが、なぜかkの処理が終わった最後のセルの内容が置き換わるという現象が起こってしないました。 試しにkの後に入れてみても、同じ結果になりました。 なぜか?わかりませんでしょうか?

thunder-sg
質問者

補足

すいません。 記述ミスでした。 自己解決しました。 ありがとうございます。

その他の回答 (1)

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

サンプル・データをおいてくれれば、もう少しわかるのですが、ちょっとゴリ押しで作った感じのコードです。「セルを差し込みたい」という表現自体は理解できないので、おそらく「違うデータを読む」というように解釈しました。 blank の値が1 なら、 For j = 1 To Maisu    If blank = 1 Then     '******    Else        End If となりますね。 それと、 Hiduke = Worksheets("sheet1").Range("A" & k).Value これは、もし、日付が、日付シリアル値なら、Range("A" & k).Text ですね。 Koumoku + " 10^" + CStr(i)  なぜ、ここだけ、「+」にしているのかよくわかりませんが、値によってはエラーが発生します。 「&」ではいけないのかな?

thunder-sg
質問者

お礼

すいません。 自己解決しました。 単なる記述ミスでした。 いろいろご指摘ありがとうございます。

thunder-sg
質問者

補足

質問がわかりにくくてすいません。 sheet1には 日付 | 名称 | 項目 | MIN | MAX | 枚数 | blank 11/4 | A1 | B1 | 1  | 5  | 2  |  1 11/5 | C1 | B2 | 1  | 2  | 2  |  0 と入力した場合、sheet2のラベル印刷サイズに合わせた5列のセルに 11/4 A1 |11/4 A1 |11/4 A1 |11/4 A1 |11/4 A1 | B1 10^5 |B1 10^5 |B1 10^4 |B1 10^4 |B1 10^3 | 11/4 A1 |11/4 A1 |11/4 A1 |11/4 A1 |11/4 A1 | B1 10^3 |B1 10^2 |B1 10^2 |B1 10^1 |B1 10^1 | 11/5 C1 |11/5 C1 |11/4 C1 |11/4 C1 |      | B2 10^2 |B2 10^2 |B1 10^1 |B1 10^1 |      | と表示されるようになっています。 これをblankの値が"1"の場合、 11/4 A1 |11/4 A1 |11/4 A1 |11/4 A1 |11/4 A1 | B1 10^5 |B1 10^5 |B1 10^4 |B1 10^4 |B1 10^3 | 11/4 A1 |11/4 A1 |11/4 A1 |11/4 A1 |11/4 A1 | B1 10^3 |B1 10^2 |B1 10^2 |B1 10^1 |B1 10^1 | 11/4 A1 |11/5 C1 |11/5 C1 |11/4 C1 |11/4 C1 | B1 blank |B2 10^2 |B2 10^2 |B1 10^1 |B1 10^1 | となるようにしたいのです。(差し込むという意味はこういうことです) 何か方法があれば、お教えください。

関連するQ&A