小技集

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ



2024年11月1日【ID:0】

メンバー限定

【ExcelVBA】空白を上に詰める

※IT予備メンバーに加入して連携すると、
一部の広告が非表示になります。


以下のような表で、空白行を除外して上に詰める場合、並べ替え機能を活用すると、書式の設定位置や要素の順番に関しても変わってしまいます。

今回は、書式の設定位置や要素の順番を変えずに、そのままの状態で上詰めする機能をVBAで開発する方法について解説していきます。
※こちらで開発したファイルは、記事に最後にて配布しています。

📘 Excel小技100選(500円)


開発

初めに、[開発]タブの中の[マクロ]を選択します。

[マクロ]を選択すると表示される以下の画面に、開発する機能の名前を入力し、[作成]を選択します。
こちらで「上詰め」と入力しています。

[作成]を選択すると表示される以下のエディタ画面の「Sub 上詰め()」から「End Sub」の間にコードを記述していきます。
「Option Explicit」は、エディタの設定次第では表示されません。

では、以下のコードを記述します。

Sub 上詰め()

    Dim inData As Variant, outData As Variant
    inData = Range("B3:B11").Value
    ReDim outData(1 To UBound(inData), 1 To 1) 
    
    Dim d As Variant, i As Long: i = 1
    For Each d In inData
        If d <> "" Then 
            outData(i, 1) = d
            i = i + 1
        End If
    Next d
    
    Range("B3:B11").Value = outData
    
End Sub

解説

このコードについて、簡単に解説していきます。


続きはIT予備メンバー限定です。

メンバー限定コンテンツになります。




IT予備メンバーページと連携することで内容を確認することができます。

メンバーとは


すでにメンバーの方は、
ログインして連携してから、こちらを更新すると閲覧できます。
※連携しても確認ができない場合は、少し時間を置いてご確認ください。

ログイン(新しいタブ)
※[ログイン]→[設定]→[IT予備-連携]で連携できます


パソコンで開く場合は、記事の最後に「リンクコピー」があるためご活用ください。

※IT予備メンバーに加入して連携すると、
一部の広告が非表示になります。


小技集-電子書籍販売ページ 小技集-電子書籍販売ページ
メンバー募集 メンバー募集






リンクの共有はこちらから行えます。

  リンクコピー    X Facebook はてなブックマーク Pocket
トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ


- 人気の記事 -



- メンバー限定 [一覧] -



サイト累計閲覧数

8320666

有料動画講座
(買い切り)

Excel完全制覇


ちょっとした機能 便利ツール
【小技集】

【Excel】重複を除いた件数と重複した件数

【Excel】表のデザインを自動で作成する方法 2選

【Excel】存在しない矢印線の作成方法

【Word】字下げや折り返し位置を調整

【ExcelVBA】ダブルクリックでデータを移動

【Excel】フラッシュフィルの意外な使い方

【Excel】VLOOKUP関数で時間を検索して抽出できない?

【Excel】同じ日付が一定間隔で続く予定表を効率的に作成

【Excel】空白を上のセルの値で埋める

【ExcelVBA】VBA開発でインデントが重要な理由

【Excel】スケジュール表の今日の日付を自動で色付け

【Excel】REPLACE関数とSUBSTITUTE関数の使い分け

【Excel】表の入力必須項目を自動色付け(入力後は解除)

【Excel】指定した期間の営業日数を求める

【ExcelVBA】入力と同時に値を上に詰める

【Word】指定した位置でページを分ける

【Excel】数式1つ・関数1つで集計表を作成!?

【Excel】組織図を簡単に作成する方法

【Excel】効率的に役割を割り当てる設定

【Excel】文字列の数字のままで正しく集計する裏技

【Excel】行(列)挿入時に上(左側)の書式が反映される問題

【Excel】数式のセルを自動で色付け

【Excel】チェックした氏名だけを同じ行の隣に表示する方法

【Excel】複数行のデータを瞬時に1列にする方法

【Excel】重複なしでコード単位の番号を割り当てる





一覧ページへ

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ