重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

文字結合の「&」の使い方について、ご教示頂けますでしょうか。
以下コードの意味がよくわかりません。

Dim 行番号 as long
Dim 列番号 as long

For 行番号 = 1 to 3
For 列番号 1 to 3
Cells(行番号,列番号)= 行番号 & "行" & 列番号 & "列"
Next 列番号

上記コードの部分の
「Cells(行番号,列番号)=行番号 & "行" & 列番号 & "列"」
の部分の処理が理解出来ません。

例えば行番号が1で列番号3の時、
Cells(1,3)=1行 & 3列 となって、
文字連結で1行3列になると思うのですが、結果には3行×3列の表が出来ていました。

この行に関しては、どのような処理が行われているのでしょうか。

A 回答 (2件)

>For 行番号 = 1 to 3


>For 列番号 1 to 3
>Cells(行番号,列番号)= 行番号 & "行" & 列番号 & "列"
>Next 列番号

ご質問者の転記ミスがあるように思います。多分以下のようになっているものと想像します。 

For 行番号 = 1 to 3

For 列番号 = 1 to 3
     '''''
Cells(行番号,列番号).value = 行番号 & "行" & 列番号 & "列"
          ''''''''''
Next 列番号

Next 行番号

>文字連結で1行3列になると思うのですが、

そのとおりですが、多分、上記のとおり追記した「Cells(行番号,列番号).value」として各セルに自分の位置を示す「○行◇列」という文字を入力するという操作をしていると想像しました。

>結果には3行×3列の表が出来ていました。

セル入力内容(セルに表示される内容)と3行×3列という表の大きさとは直接関係ありません。
表の大きさはNo.1さんのご指摘のとおり、For~Nextの繰り返し回数で決定されます。このご質問の場合、行は1~3、列も1~3を繰返していますので、3行×3列の表が作成されるわけです。
    • good
    • 0

こんばんは



>結果には3行×3列の表が出来ていました。
行番号、列番号を変えながら、繰り返して実行しているからです。

>For 行番号 = 1 to 3
>For 列番号 1 to 3
>Cells(行番号,列番号)= 行番号 & "行" & 列番号 & "列"
>Next 列番号
(↑)これ、中途半端な引用になっていますが、「For ~ Next」で繰り返し処理を行う構文になっています。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!