- ベストアンサー
空白セルをつめる。
エクセルです。 空白のセルがあるので上方向に詰めたいのですが、よい操作方法ありますか? この場合はVBAを使用したほうが良いですか? ctrl+Gで空白行を削除できるのは知っているのですが、 行を削除すると困るのでそれ以外の方法を探してます。 A1 A1 × × × × × × 上のように、上方向へ詰めたいのです。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
×印の下のセルで右クリック→削除→上方向へシフト でできますよ。
その他の回答 (5)
- arikui
- ベストアンサー率43% (52/120)
A1列をキーにして、データ並べ替えをすると、A1が空白の行が、先頭か最後に集まります。 もし現状の行の順番を変えたくなければ、列を挿入し、そこに1~の連番を入れた後、A1列をキーにして、データ並べ替えをします。 次に、A1列が空白の行を削除し、残りを行番号で並べ替えをします。 最後に、行番号の列を削除する、ということでできます。
お礼
こちらにまとめてお礼を記入させていただきます。 おかげさまで、うまくできました。またVBAは今後の参考にしたいと思います ありがとうございました。
- AQUALINE
- ベストアンサー率33% (18/53)
VBAならこんな感じでいかがでしょう? Sheet1のA列にデータがあるとして、とりあえずB列に空白をつめた状態で表示します。 データ最終行を100としてますが適当に直してください。B列がまずければ Cells(n, "B") のBをXでもYでも好きな列に変えてください。 Sub test() Dim i As Integer, n As Integer n = 1 With Sheets("Sheet1") For i = 1 To 100 If .Cells(i, "A") <> "" Then .Cells(n, "B") = .Cells(i, "A") n = n + 1 End If Next End With End Sub
- KODAMAR
- ベストアンサー率26% (267/1006)
>範囲指定して、右クリック、削除、上方向へシフト >すると、範囲指定したところが削除されていまいました。 >○×も消えてしまいました。 消すところだけ、範囲指定をしないと全部消えてしまいます。 そういう機能なので…。 一度に全部というのでしたら複数範囲指定(Ctrlを使う)か、#2や#3の方の方法の方がいいと思います。
- GuruGuru22
- ベストアンサー率51% (177/346)
> ctrl+Gで空白行を削除できるのは知っているのですが、 > 行を削除すると困るのでそれ以外の方法を探してます。 A列を選択して、ctrl + G で空白セルを選んで 削除すればよいかと。
- taknt
- ベストアンサー率19% (1556/7783)
VBAを使用したほうがいいと思います。
補足
VBAの場合はどんな記述になるか、ご存知でしょうか?
補足
うまくいかないです。 範囲指定して、右クリック、削除、上方向へシフト すると、範囲指定したところが削除されていまいました。 ○×も消えてしまいました。 どうしてだろう。???