小技集

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



2024年8月16日【ID:0】

メンバー限定

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

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


セルの列幅に収まらない値が入力されている場合、その値はセルからはみ出してしまいます。
右隣りのセルにも値が入力されている場合は、はみ出した値が見えなくなってしまいます。
その対策として、セル内の値を[折り返して表示する]や、セルの列幅を広げるといった方法がありますが、以下のような予定表などの場合は、見た目が悪くなってしまいます。

そのため今回は、選択したセルの列幅を自動で調整し、他のセルを選択すると同時に列幅が元に戻る仕組みを、VBAを用いて実現していきます。

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


仕組み

今回の仕組みは以下のようになります。

①セルを選択すると同時に、選択しているセルを基準に列幅を自動調整
②他のセルを選択すると同時に、列幅を元に戻す

「①」に関しては、予定表の中が選択された時のみに適用します。

「②」に関しては、曜日の列を基準に列幅を調整することで、元の状態に戻していきます。

特定のシート上のセルを選択すると同時に何かしらの処理を実行するには、シートモジュールを活用します。


1. 開発準備

シートモジュールを開くには、対象のシートタブの上で右クリックし、[コードの表示]を選択します。

表示された画面がシートモジュールの編集画面になります。

次に、編集画面の上部にあるリストから[Worksheet]を選択します。

選択すると「Worksheet_SelectionChange」というイベントプロシージャが表示されます。
万が一、異なるイベントプロシージャが表示された場合は、先ほどのリストの右隣りのリストから「SelectionChange」を選択してください。
※「Option Explicit」は環境設定によっては表示されません。

このイベントプロシージャは、該当するシートのセルの選択位置が変更されると同時に実行されるものになります。


2. コードの記述

SubからEnd Subの間に、以下のコードを記述します。


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

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




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

メンバーとは


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

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


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

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


メンバー募集 メンバー募集





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

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


- 人気の記事 -



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



サイト累計閲覧数

7421545

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

Excel完全制覇


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

【Excel】締め日を考慮したカレンダーの作成方法

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

【ExcelVBA】双方向の入力を実現する方法

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

【Excel】上限額を設定して支給額を自動で求める

【Excel】住所から都道府県のみを抽出

【Excel】指定したセルを別のセルの間に移動する

【Excel】リンク更新の警告が表示されないようにする

【Excel】カレンダーに「休」を表示(祝日などを考慮)

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

【ExcelVBA】選択した時のみ値が表示される!?

【Excel】実は数式内にコメントを残せます

【Excel】条件付き書式で結合した見た目にする方法

【Excel】入力した数値を0埋め4桁にする

【Word】文頭のアルファベットが自動で大文字になる

【ExcelVBA】選択データの全項目を一括表示

【Excel】「今日の予定」を表から抽出

【Excel】値を変えずに千の位以上を表示

【Excel】XLOOKUP関数を使って複数条件で検索

【Excel・Googleスプレッドシート】ExcelファイルをGoogleスプレッドシートで開くと…!?

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

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

【Excel】選択した範囲内の改行を一括削除

【Excel】実は無料の学習教材

【Excel】四半期を簡単な数式で求める





一覧ページへ

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