2017-01-30 4 views
0

こんにちは私は特定の名前の列を見つけるVBAのコードを持っていますし、それを使って操作します。だから私は次のコードを持っています:以前に見つかった列VBAを参照する方法は?

Dim arr  As Variant 
With Worksheets("Sheet2") 
    arr = .Range(.Cells(3, control2), .Cells(3, .Column(control2).Rows.Count.End(xlUp).Row) 
End With 

contrlo2変数は問題の列です。私はコードが最後までこの列のすべての値を取るようにしたい。しかし、これは機能しません。私はsyntaxisエラーを受け取ります。

+2

変更 '.Cells(3' .Cells(.Rows.Count、CONTROL2).END(xlUp)に.Column(CONTROL2).Rows.Count.End(xlUp).Row' ' – YowE3K

答えて

0

control2の最後のセルを .Cells(3, .Column(control2).Rows.Count.End(xlUp).Rowで取得しようとしています。 - 行番号を示すので、あなたが.Cells(.Rows.Count, control2).End(xlUp).Rowでそれを行う、control2列の最後の行にそれを変更する必要が

  • 3:あなたは2つのパラメータを持っているカッコ内

  • .Column(control2).Rows.Count.End(xlUp).Row - 列番号を示すので、ここではcontrol2を使用する必要があります。

あなたの配列arrは(あなたは2次元配列としてそれを持っているしたい場合は、それを削除します)1次元にしたい場合、私はApplication.Transposeを追加しました。

With Worksheets("Sheet2") 
    arr = Application.Transpose(.Range(.Cells(3, control2), .Cells(.Cells(.Rows.Count, control2).End(xlUp).Row, control2))) 
End With 
関連する問題