• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルでセルが空白だったらその行を表示させない方法を教えてください。)

エクセルでセルが空白だったらその行を表示させない方法

このQ&Aのポイント
  • エクセルでセルが空白だった場合、その行を表示させない方法を教えてください。office2003のエクセルを使用しています。
  • マクロを組まずにセルが空白の行を非表示にする方法があれば、具体的なソースコードを教えてください。
  • セルが空白の行を削除するのではなく、それらの行を表示しないようにする方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.7

No.5・6です! 何度もごめんなさい。 No.5・6ともに無視してください。 No.6に関してはNo.5の行削除のコードに少し手を加えただけですし、 もしある行の最終列が空白なら希望の結果にならないと思います。 今一度コードを載せておきます。 Sub test() Dim i, j As Long For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row For j = 1 To 4 '←の「4」はデータ量によって列番号を変えてください。 If Cells(i, j) = "" Then Rows(i).Hidden = True End If Next j Next i End Sub 検証せずに投稿してごめんなさいね。m(__)m

osarusan0214
質問者

お礼

すみません!!! 補足取り消しで!! 他の方の回答に答えがありました^^; 試してみたところうまくできました^^ ありがとうございます^^

osarusan0214
質問者

補足

ありがとうございます! &失礼しました。 説明不足でした。 あと、一番最後が空白だと、非表示にできませんでしたが、なにか対策等はございませんか?

その他の回答 (6)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.6

No.5です! たびたびごめんなさい。 前回のコードは行を削除してしまうコードでした。 ↓のコードに訂正してみてください。 Sub test() Dim i, j As Long For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1 For j = 1 To Cells(i, Columns.Count).End(xlToLeft).Column If Cells(i, j) = "" Then Rows(i).Hidden = True End If Next j Next i End Sub どうも何度も失礼しました。m(__)m

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

こんにちは! すでに回答は出ていますので、参考程度で・・・ 一例です。 操作したいSheet見出し上で右クリック → コードの表示 を選択し、↓のコードをコピー&ペーストして マクロを実行してみてください。 Sub test() Dim i, j As Long For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1 For j = 1 To Cells(i, Columns.Count).End(xlToLeft).Column If Cells(i, j) = "" Then Rows(i).Delete (xlUp) End If Next j Next i End Sub 以上、参考になれば良いのですが・・m(__)m

  • mar00
  • ベストアンサー率36% (158/430)
回答No.4

訂正です。 A列の最後が空白の場合もあると思うので For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row を For i = 1 To Cells(Rows.Count, 2).End(xlUp).Row にして下さい。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

できれば1行目には行を挿入して項目名を入れることにします。 その後にA列を選択します。 「ホーム」タブの「並べ替えとフィルタ」から「フィルタ」をクリックします。 A1セルに▼が表示されますのでそれをクリックして「空白セル」にチェックがあるのをクリックして消します。 OKボタンをクリックすることでA列に空白のある行は表示されなくなります。 すべてを表示させ元に戻るのでしたら「並べ替えとフィルタ」で「フィルタ」をクリックしてアクティブ状態を解除すればよいでしょう。

回答No.2

勉強中ならマクロの自動記録で 1. A列選択 2. [Ctrl]+[G]ジャンプ 3. [セル選択] 4. ●空白セル [OK] 5. 書式 - 行 - 表示しない ついでに表示する場合は 全セルを選択して再表示します

  • mar00
  • ベストアンサー率36% (158/430)
回答No.1

Sub Macro1() For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row If Range("A" & i) = Empty Then Rows(i).EntireRow.Hidden = True End If Next i End Sub で出来ると思います。

osarusan0214
質問者

お礼

ありがとうございます^^ できました^^ Range("A" & i) こんなつかいかたもできるんですね^^ 勉強になりました。ありがとうございます^^