- ベストアンサー
エクセルVBAでの行の取得方法
myrow = Cells(1, 1).Row + 1 などの方法で行を取得するのではなく、 エクセルのセルにある数字、たとえば A1に3、B1に3 で3行目を取得できませんか? Cellsの括弧の中をValueで指定してもエラーとなります…
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
セルA1からa行b列目 RANGE("A1").offset(a,b) a,bは数値です。 ただ、オフセットする方向にセルが結合されていると、数がずれてしまうようです。ご注意下さい。
その他の回答 (1)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 >myrow = Cells(1, 1).Row + 1 これは、行の番号を取得しているのだと思います。 >エクセルのセルにある数字、たとえば A1に3、B1に3 >で3行目を取得できませんか? 意味が良く分かりません。3行目を取得するというのは、3行目の何を取得するの分かりません。 このどれかか、どれでもないのかな。 A1 が、3 If Range("A1").Value > 0 Then Cells(Range("A1").Value, 1).EntireRow.Select End If A1が3 B1 が3 If Range("A1").Value = 3 And Range("B1").Value =3 Then Rows(3).Select End If A1 と B1 で、場所を特定させる。 Dim i As Long, j As Long Dim Ret As Variant i = Range("A1").Value j = Range("B1").Value If i >0 And j > 0 Then Ret = Cells(i, j).Value End If
補足
有り難うございます。 おっしゃるように質問の仕方がおかしいですね。申し訳ございませんでした。 最後のご提案で何とか出来そうです。 ありがとうございました。
補足
ありがとうございます。 この後に例えば、 RANGE("A1").offset(1,1) .Cells(1, 1) = name.value などとして、フォームの内容をセル A1 に入れる事は出来ますか? また、Ofsetの中の数字は セルを参照させる事は出来ますか?