を使用する場合は、表がリサイズではない私は、一般的にコーディングに比較的新しいですが、ここに行く:エクセル:VBA
私は整理しようとしていますmembershipdataの膨大なリストを持っています。これは、データが変わるにつれて毎週行われる予定なので、私は少し作業を自動化しようとしています。
私は既存のテーブルの下に別のシートにデータの行全体が、特定の細胞が特定のテキストが含まれる場合のコピーコード、およびペーストを(助けを借りて)書かれています。
マクロを使用してこれをやったときにCtrl + CとCtrl + Vを使用している場合、それはどうなるのようにしかし、テーブルのdoesntのは、それに応じてサイズを変更。 I.今週より多くのデータがあるときは、テーブルは十分に大きくないので、テーブル内のソートオプションはすべてのデータをソートしません。
私はこのコードを使用して、テーブルのサイズを変更することができました:これは正常に動作します
Sub sortOK()
Dim sht As Worksheet
Dim LastRow As Long
Dim LastColumn As Long
Dim StartCell As Range
Set sht = Worksheets("OK")
Set StartCell = Range("A1")
Worksheets("OK").UsedRange
LastRow = StartCell.SpecialCells(xlCellTypeLastCell).Row
LastColumn = StartCell.SpecialCells(xlCellTypeLastCell).Column
sht.Range(StartCell, sht.Cells(LastRow, LastColumn)).Select
sht.ListObjects("OK").Resize Range(StartCell, sht.Cells(LastRow, LastColumn))
End Sub
、しかしそれだけで私は、この特定のシートを見ていたとき、私は別のシートから操作傾ける動作します。 どうすればいいですか?私はまた、他の4つのリストに一度に同じ操作をしたいと思っ
、独自のスプレッドシートの各。
私は一日中この問題に立ち往生しており、私の頭は爆発しようとしています!
ありがとうございます。
*私は(助けて)特定の細胞が特定のテキストが含まれており、既存のテーブルの下に別のシートに貼り付け、それは*それはあなたが私たちを示したコードではない場合、データのコピー行全体をコードを書かれています。そのコードを私たちに教えてください。 –
範囲オブジェクトの完全修飾については[こちら](https://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba)をご覧ください。 'Select'や' Activate'を使わないでください。範囲を適切に修飾し、実行時にどのシートがアクティブであるかにかかわらずマクロを実行できます。 –
常に、コードの先頭に明示的にオプションを明示してください。使用しているワークブックを含む範囲オブジェクトを完全に参照します。また、ワークシート( "OK")でコンパイルエラーが発生しないことに驚いています。これを変数に設定していないので、UsedRange。 – QHarr