Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8248 / 13644 ツリー ←次へ | 前へ→

【34414】表の下の空欄・・・ Help me!! 06/2/2(木) 9:19 質問[未読]
【34424】Re:表の下の空欄・・・ NECRO 06/2/2(木) 11:24 回答[未読]

【34414】表の下の空欄・・・
質問  Help me!!  - 06/2/2(木) 9:19 -

引用なし
パスワード
   今回もお助けください。

エクセルのマクロの記録機能を使ってマクロを作りました。
私の作業の効率が悪いのか、できあがったエクセルが4行程度の物なのに6MBもあります。

調べていてわかったのですが、関数(Vlookup)使用後に私は関数のままでは参照元のデータが消せないので、コピーして形式を指定して貼り付けの「値」のみで貼り付けします。このとき私は列全体をコピーして貼り付けています。
そして、これが原因でエクセルのファイルが6MBもあるという事が判明しました。
実際に、データがなにも無い下の行すべてを選択して削除すると50KBになりました。

そこで、質問ですが。

下の図のように、データがない行すべてを指定して、削除するVBAを教えていただきたいです。
     A     B     C      D     ・・・
1  あいうえお  5個    部品    特急
2  かきくけこ  2個    部品    通常
3  さしすせそ  7個    部品    通常
4    空欄    空欄    空欄    空欄
5    空欄    空欄    空欄    空欄




とこのように4行目からは空欄なのですが、なにか目に見えないゴミみたいなのがあるみたいです。

ちなみに毎回データの数は変わります。5行あるときもあれば6行あるときもあります。

どうかマクロで自動的にしたの空欄を削除する方法を教えてください。


よろしくお願い致します。

【34424】Re:表の下の空欄・・・
回答  NECRO  - 06/2/2(木) 11:24 -

引用なし
パスワード
   ▼Help me!! さん:
こんにちは。

終端セルは『End プロパティ』で取得できます。
詳しくはヘルプを参照してください。

下記はサンプルです。

Public Sub SAMPLE()
  Dim shtTEMP As Worksheet
  Dim max_row As Long

  'シート変数の参照設定
  Set shtTEMP = ThisWorkbook.ActiveSheet
  '-> 実際作業するシートを設定してください。

  '最終行の取得
  max_row = shtTEMP.Cells(shtTEMP.Rows.Count, 1).End(xlUp).Row
  '-> 対象列は必須入力列をに変えてください。

  '最終行+1行目以降を削除
  shtTEMP.Rows(max_row + 1 & ":" & shtTEMP.Rows.Count).Delete

  'シート変数の参照解放
  Set shtTEMP = Nothing

End Sub

8248 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free