両方のワークシート( "Sheet1"と "Sheet2")が同じブックにあるため、 "Sheet1"セルA1の値は"Sheet2!$ A $ 14"である必要があります。
以下のコードはもう少し長くする必要がありますが、私はすべての手順を順を追って説明したいと思います。
Split
関数を使用して、Worksheet
の名前とRange.Address
を分離し、結果を2つの配列要素に入れます。
その後、最初の配列RngString
をワークシートの名前として取得し、2番目の配列要素はrange.addressです。あなたは以下のもののいずれかの方法で行うことができます
コード
Option Explicit
Sub SelectRange()
Dim Rng As Range
Dim RngString As Variant
Dim ShtName As String
Dim RngAddress As String
RngString = Split(Worksheets("Sheet1").Range("A1").Value, "!")
' sheet name is the first array element
ShtName = RngString(0)
' Range address is the second array element
RngAddress = RngString(1)
' setting the Rng object
Set Rng = Worksheets(ShtName).Range(RngAddress)
' since your range is in another worksheet, you need to activate it first
Worksheets(ShtName).Activate
' select the range
Rng.Select
End Sub
をおかげでたくさん...それは動作します... :) –
どういたしまして。答えを受け入れることができます。ありがとうございました! – user3598756