小技集

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



2024年11月1日【ID:0】

メンバー限定

【ExcelVBA】空白を上に詰める

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


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

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


開発

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

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

[作成]を選択すると表示される以下のエディタ画面の「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
ExcelVBAレベル確認

解説

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


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

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




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

メンバーとは


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

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


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

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


メンバー募集
ExcelVBA学習ロードマップ配布 ExcelVBA学習ロードマップ配布





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

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


- 人気の記事 -



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



サイト累計閲覧数

6847461

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

Excel完全制覇


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

【Excel】瞬時にコピーするショートカット

【Excel】項目に合わせて自動入力切替

【Excel】グラフの軸の「データのない日付」を非表示にする

【Excel】リンク付きの目次を簡単に作成

【Excel】該当する氏名をカンマ区切りで抽出

【ExcelVBA】保存時に自動でバックアップファイルを作成

【Excel】散布図で値が重複する場合の対策

【Excel】COUNTIF関数などで活用できる条件式

【Excel】一部が結合されている表から特定の値を数式で抽出

【Excel】日付の特殊なオートフィルの活用

【Excel】表に自動で罫線を設定(カテゴリー別の罫線も設定)

【Excel】表の背景色を交互に変更する方法

【Excel】月単位の集計表を作成

【Excel】分析に必要な情報を瞬時に求める

【ExcelVBA】チェックボックスを一括リセットするボタン作成

【ExcelVBA】選択セルの列幅を自動調整

【Excel】数式で週の開始日を求める

【Excel】複数のセルを異なる区切り文字で文字結合

【ExcelVBA】複数シートの表に一括反映

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

【Excel】8桁の数値の日付を日付形式に変換

【Excel】FILTER関数1つで離れている項目を抽出

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

【Excel】数式のみで複数の表を縦に並べる

【Excel】未割当の行を自動で色付け





一覧ページへ

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