top of page

​タグ一覧

配列処理(73)

階層化フォーム(33)

ファイル操作(28)

開発事例(22)

シート・セル操作(18)

図形操作(13)

コード自動生成(10)

ユーザーフォーム(9)

文字列操作(8)

設計思想(7)

開発効率化(6)

数学(6)

GAS(5)

アニメーション(5)

技術解説(4)

講座実施報告(5)

イミディエイトウィンドウ(4)

Googleスプレッドシート(4)

副業(4)

クリップボード(4)

条件付き書式(4)

その他(4)

ココナラ(3)

小説(3)

HTML(3)

JavaScript(3)

OneDrive(2)

イベントプロシージャ(2)

Enum(2)

PDF(2)

フリーランス(2)

リスキリング(2)

Outlook(2)

介護(2)

Discord(2)

シフト表(2)

LookerStudio(2)

日報(2)

カレンダー(2)

罫線(2)

パズル(2)

小ネタ(2)

コード解説(2)

クラスモジュール(2)

ステータスバー(1)

コード解析(1)

バックアップ(1)

可変長引数配列(1)

ブック処理(1)

スクレイピング(1)

スプレッドシート(1)

coconala(1)

リボン登録マクロ(1)

QRコード(1)

実行予約(1)

給与計算(1)

VBA不使用(1)

リボン(1)

超勉強会(1)

スピログラフ(1)

図名描写(1)

連想配列(1)

溶接ロボット(1)

保育士(1)

楽天市場(1)

経理(1)

医療(1)

文書作成(1)

発注書(1)

ショートカット(1)

WebAPI(1)

色操作(1)

スーパー開発ショートカット(1)

ライブラリ処理(1)

放課後等デイサービス(1)

児童福祉支援(1)

学校(1)

UI(1)

CAD(1)

カーソル操作(1)

IkiKaiso2.xlam|条件付き書式グループ「非空白を罫線」の解説

更新日:1月11日

概要

 書籍「Excel VBA開発を超効率化するプログラミングテクニック」の特典であるIkiKaiso2.xlamのリボン登録マクロの解説のための特設ページです。


出版社の書籍のページ⇒https://gihyo.jp/book/2024/978-4-297-14023-6


リボン登録マクロ全体解説ページ⇒https://www.softex-celware.com/post/ikikaiso2


 本ページではIkiKaiso2.xlamの「条件付き書式」グループの「非空白を罫線」ボタンの使い方を解説します。

非空白を罫線

解説

 用途

  表に値が入っていると自動的に罫線を設定するような条件付き書式を自動設定する


 使い方

 実際に使っている様子の動画を下記でご確認ください。


 手順は次の通りです。

①:条件付き書式を設定したい表の表全体+シート内の一番下までを選択する

②:「非表示を罫線」ボタンをクリック

③:①で選択したセル範囲が確認表示される。変更がある場合はこの段階で選択しなおす。

④:条件付き書式が自動設定される



 条件付き書式設定のメリット 

 このような条件付き書式を設定することで「どの範囲まで値が入っているか」をすぐに見分けがつくので、ユーザーにとって使いやすくなるメリットがあります。


 ちなみに似たような設定として「テーブル化」もありますが、次のような理由でテーブルを利用したくない場合があります。

  • テーブルの範囲が大きく特に数式も含んでいると並び替えやフィルターなどの操作の遅延が大きくなる

  • テーブル範囲にVBAで二次元配列を一括出力を行おうとすると、出力する二次元配列の範囲に合わせてテーブル範囲を調整するような処理も必要になってくるので、VBAコードの構築が長くなる


 このような場面に対して上記のような非テーブル状態の表に条件付き書式で罫線を自動設定する処理が役に立ってきたりします。


 

 設定している条件付き書式について解説

 設定している条件付き書式は2つあります

条件①:B列(表の左端の列)が非空白なら左右に罫線を設定する

条件②:「B列が非空白」かつ「B列の1つ下のセルが空白」なら下に罫線を設定する


設定している条件付き書式について解説

 このうち条件②に付いてですが、OFFSET関数を利用せずに次のような簡潔な数式でも実現します。


 しかしなぜ「OFFSET」関数を利用している理由ですが、これは表範囲で途中の行が消去や挿入が行われた場合に、OFFSET関数を使用しないと条件付き書式が破壊されてしまうためです。


 試しに行の消去を試してみます。条件付き書式は上記の「=AND($B3<>"",$B4="")」を使用しているとします。下記図のように12行目を丸ごと消去してみます。

試しに行の消去

 すると、表の下端の罫線が付かなくなりました。11行目(B11セル)の条件付き書式を確認してみると参照すべき1つ下のセルが「#REF!」となっており参照先を失っているエラーとなっていて、条件付き書式が破壊されているのが確認できます。

条件付き書式が破壊されている

 このようにOFFSET関数を使用せずに一つ下のセルを参照するような数式だと行の消去によって、条件付き書式が破壊されてしまう恐れがあります。これは行の削除だけでなく行の挿入も影響を受けるので注意が必要です。


 上記のようなことも考慮して「非空白を罫線」の機能では設定する条件付き書式はOFFSET関数を利用しています。

Excel VBAによる業務自動化・ツール開発をご検討の方へ

​"脱Excel"の前に、現状のExcelの潜在能力を120%発揮してみませんか?

Softex-Celware

​インボイス登録番号:T5810983887134

  • Facebook
  • Twitter
  • YouTube

©2023 softex-celware。Wix.com で作成されました。

bottom of page