- ベストアンサー
変数を利用したマクロの組み方
- 変数を利用したマクロの組み方について教えてください。具体的には、変数iを利用してセルに値を入れる方法について知りたいです。
- 変数iはA列にランダムな整数が入るものとします。指定の表に対して、特定のセルに計算結果を入れたい場合、どのようにマクロを組めばよいのでしょうか?
- また、変数iを列にも行にも使用することは可能なのでしょうか?例えば、A1が1の場合、D13にA11の計算結果を入れ、A2は空白なので何も行わず、A4が2の場合、D16にD14の計算結果を入れる、という処理を繰り返す方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! 質問文をそのまま素直にやれば Sub Sample1() Dim i As Long For i = 1 To 120 If Cells(i, "A") <> "" Then Cells(i + 12, "D") = Worksheets("Sheet2").Cells(i + 10, i) End If Next i End Sub といった感じになると思うのですが、 これではA列に入っている数値の意味が全くありませんね! それともサンプルが少ないためにたまたまこうなっているのか判りませんが、 実際はもっと複雑なのですかね?m(_ _)m
その他の回答 (1)
- keithin
- ベストアンサー率66% (5278/7941)
作成例: sub macro1() dim r as long dim i as long worksheets("Sheet1").select for r = 1 to 120 if cells(r, "A") <> "" then ’A列の数字を変数に受けてから i = cells(r, "A").value ’該当の転記を行う cells(i + 12, "D").value = worksheets("Sheet2").cells(i + 10, i).value end if next i end sub >A4は2だからD16にシートシート2のD14の計算結果を返す・・・ +12が途中から+14に化けてるのか、それともA4は2なのに4と勘違いしたのか、どっちですかね。 いずれにしても「何をしたいのか」の説明がそもそも間違ってたら、正しい回答は寄せられませんよ?
お礼
申し訳ございません。今後は桐光する際に、よく内容を確認します。 ありがとうございした。
お礼
ご回答ありがとうございます。そうです。質問するにあたって、知りたい部分のみを中心に簡略化致しました。Iは行にも列にも適用できるんですね。