2016-12-10 6 views
0

私は複数のQ & Aを読んでいますが、異なるオブジェクトの使い方ですべての長いスクリプトを実際に理解することは難しいです。動的選択を伴うVBAペースト範囲

あるワークシートから別のワークシートまでの範囲を選択しようとしています。 範囲が毎回変わる可能性があるので、範囲を動的に保ちたい。そうすることで、次のスクリプトを使用しました。

Dim range As Long 

For range = ActiveCell To ActiveCell.End(xlDown) 
Sheets("Stock Report").range("A4" & range).Value = 
    Sheets("Unique File").range("Y8" & range).Value 

ただし、何もしません。

このスクリプトは、作業を行いますが、私は、ダイナミック最後のセルを維持したいと思います:

Sheets("Stock Report").Range("A4:A9000").Value = 
    Sheets("Unique File").Range("Y8:Y90004").Value 

私は別のワークシートに他のファイルを使用して計算されている複数の列のためにこれを行うと、ソートする必要がありますする必要があります彼らは最終的に他の計算ですべての計算をすることなく。

提案がありますか?

答えて

0

OK try。

Sheets("Unique File").Range("Y8:Y" & Sheets("Unique File").Range("A4").End(xlDown).Row + 4).Copy 
Sheets("Stock Report").Range("A4").PasteSpecial Paste:=xlPasteValues 

レンジ(「A4」)。エンド(xlDown).Row在庫レポートシート上のデータの最後の行を取得し、独自のファイルのシートの同じ行までコピーするために使用されます。あなたの範囲がユニークファイルシートの8で始まるので、私は4を追加しました。

ユニークな値シートの在庫レポートシートから作成した「範囲」を使用しようとしていたため、コードが機能しなかったと思います。

+0

こんにちはゴードン。私は列全体を選択したくないということです。常にセル(4、xx)から開始する必要があります。私が選択したい範囲には値があります。私がしたくないことは、私が持っている価値よりも最後に行が増えることです。 –

+0

これは機能します!どうも –

関連する問題