選択したセルの範囲の値を持つ配列を作成しようとしています。
ActiveSheet.Range("$F$3:$F$100").Select
varGetArrayAll = Selection
しかし、それは唯一の最初のセルF3を持つ配列を作成します。私はこれまでのところ、次のされている何
。
誰かが私を助けることができれば幸いです。
選択したセルの範囲の値を持つ配列を作成しようとしています。
ActiveSheet.Range("$F$3:$F$100").Select
varGetArrayAll = Selection
しかし、それは唯一の最初のセルF3を持つ配列を作成します。私はこれまでのところ、次のされている何
。
誰かが私を助けることができれば幸いです。
あなたは下の行で同じように、Application.Transpose
を使用し、その後、1-D配列に範囲を取得したい場合:
varGetArrayAll = Application.Transpose(ActiveSheet.Range("$F$3:$F$100").Value)
しかし、あなたはActiveSheet
に頼るべきではありません、あなたは完全にあなたを修飾する必要があります
' replace "Sheet1" with your sheet's name
varGetArrayAll = Application.Transpose(Worksheets("Sheet1").Range("$F$3:$F$100").Value)
私の日を保存しました。ありがとうございました。完璧に動作します! –
このようにそれを試してみてください:
Public Sub TestMe()
Dim vargetArrayAll As Range 'or as Variant, to look like your code.
Dim counter As Long
Set vargetArrayAll = Selection
For counter = 1 To vargetArrayAll.Count
Debug.Print vargetArrayAll(counter)
Next counter
End Sub
ワークシートと
Range
は、それが以下のコードのように、です
したがって、値を範囲として設定し、その要素が配列であるかのようにアクセスできます。ただし、0
ではなく、1
で始まります。
varGetArrayAll = ActiveSheet.Range( "$ F $ 3:$ F $ 100")。値 –