小技集

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



2025年5月16日【ID:0】

メンバー限定

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

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


セルに値を入力すると同時に、値を自動で上に詰める仕組みの実現方法について紹介していきます。

また、今回の仕組みでは、表の途中の値を削除した際にも、値が自動で上に詰められます。

※こちらで開発したファイルは記事の最後にて配布しています。


1. 開発準備

こちらでは、以下のような「氏名」を入力する1列の表を活用します。

そして、「この表に新規で値を入力した時や、値を削除した時に、表の値を上に詰める」という仕組みを実装していきます。

そのように、該当するシートのセルを編集すると同時に処理を自動で実行するには、「シートモジュール」の「イベントプロシージャ」を活用します。
シートモジュールは、該当するシートのタブ上で右クリックし、[コードの表示]を選択することで表示することができます。

選択すると、以下のエディタ画面(VBE)が表示されます。
また、該当するシートのシートモジュールが表示された状態になります。
「Option Explicit」は、VBEの設定内容次第では表示されません。「Option Explicit」についての解説はこちらでは省略します。

次に、該当するシートのセルを編集すると同時に処理が実行される特殊なプロシージャ(イベントプロシージャ)を用意する必要があります。
そのためには、シートモジュールの左上のリストから「Worksheet」を選択します。

「Worksheet」を選択すると、自動で「Worksheet_SelectionChange」というプロシージャが表示されます。
このプロシージャは、該当するシート上のいずれかのセルが選択されると同時に処理が実行されるイベントプロシージャになります。

ただ、今回使用するイベントプロシージャは、セルを編集すると同時に処理が実行されるものになります。
そのため、右上のリストから「Change」を選択します。

表示された「Worksheet_Change」というプロシージャを活用します。
「Worksheet_SelectionChange」というプロシージャに関しては削除して問題ないです。


2. コードの記述

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


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

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




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

メンバーとは


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

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


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

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


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





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

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


- 人気の記事 -



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



サイト累計閲覧数

5750079

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

Excel完全制覇


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

【Excel】片方にしか存在しない値を見つける

【Excel】数式が入力されているセルを自動で色付けする

【Excel】一致データの先頭と末尾を抽出

【Excel】条件付き書式で休日を色付け

【Excel】2行1データの表を1行1データに変換

【Excel】カレンダーに休日を反映(VLOOKUP不要)

【Excel】初回購入日と直近購入日を抽出

【Excel】VLOOKUPより便利なINDEX・MATCH

【Excel】表の中の集計項目を瞬時に埋める

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

【Excel】商品ごとの発注単位を考慮したリスト

【Word】「表記ゆれ」を瞬時に修正する方法

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

【Excel】複数の表を結合して重複を除外する

【Excel】「文字列の数字」が入力されたセルを色付け

【ExcelVBA】瞬時にフィルターで絞り込み

【Excel】重複を考慮した上位3件を抽出

【Excel】スピンボタンでデータ抽出

【Excel】期限が3日以内の未完了タスクを色付け

【Excel】表の一番右側のデータを自動抽出

【Excel】姓と名の間に半角スペースの入力を強制

【Excel】在庫数が指定値未満の場合に自動色付け

【Excel】直近3か月をスクロールバーで表示

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

【ExcelVBA】数式「AND(3,4)」とVBA「3 And 4」は違う!?





一覧ページへ

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