- ベストアンサー
excelで別シートのセルを選択(VBA)
どなたか教えてください。 シートXのB1に行番号 シートXのB2に列番号 が記載されていたとして、 別シート(Y)の、上記で指定したセルを選択する(フォーカスを移動する方法)を教えてください。 シート(X) A B C 1 行 25 2 列 2 シート(Y) A B C 1 2 ::::::: 24 25 (ここ) 以下のように書いても、最後の行でエラーになってしまいます。 行番号 = Sheets("X").Cells(1, 2).Value 列番号 = Sheets("X").Cells(2, 2).Value Sheets("Y").Select Range(Cells(行番号, 列番号)).Select
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
ANS2の方とほぼ一緒ですが以下のようになります。 行番号 = Sheets("X").Cells(1, 2).Value 列番号 = Sheets("X").Cells(2, 2).Value Sheets("Y").Select Cells(行番号, 列番号).Select ちなみに、RangeプロパティとCellsプロパティの関連は Range("A1") ⇔ Cells(1,1) Range("A1:B5") ⇔ Range(Cells(1,1),Cells(5,2)) となります。 1つのセルを指定する場合は Cells(□,□) 複数のセル(範囲)を指定する場合は Range(Cells(□,□),Cells(□,□)) となります。
その他の回答 (2)
- guruguru2
- ベストアンサー率29% (39/132)
こんばんわ。 行番号 = Sheets("X").Cells(1, 2).Value 列番号 = Sheets("X").Cells(2, 2).Value Sheets("Y").Select Sheets("Y").Cells(行番号, 列番号).Select で、できると思います。(^^) (実行確認済)
お礼
できました。 ありがとうございます。
- sanks99_1978
- ベストアンサー率60% (6/10)
こんな感じで指定したシート名XXに一致した あるカラム(V2)の値がとれると思います。 For j = 1 To Worksheets.Count Worksheets(j).Select With ActiveSheet IF Worksheets(j).Name = "XX" Then Worksheets(j).Range("V" & "2").Select value = ActiveCell.FormulaR1C1 END If End With Next j でも、名前で直接アクセスできるのかも・・ ↓みたいな感じで。 Worksheets("名前").Range("V" & "2").Select 確かめてなくてごめんなさい。
お礼
早々にご回答いただきありがとうございます。 おかげさまでできました。
お礼
ありがとうございます。 よくわかりました。