見出し画像

[EXCEL] 「条件付き書式」の「書式」で「配置」が選べないエクセルの謎仕様 Copilotに聞いたら樹海入り。でも解決策はある!

目次 >  作表

作表の基本もまだ掲載できていませんが、こんな表の作り方を書きました(掲載は後日)。

本年と前年の比較値(本年/前年)をパーセント表示するというものですが、本年・前年のいずれかが「0」だと計算できません。
*本年が0だと答えはエラーに、前年が0だと答えは0に。
その場合、お役所では「皆増・皆減」(かいぞう・かいげん)を使います(統計業務ではよく使うみたい)。
その数式を説明する記事です。
数式自体は難しくありませんが、セルに文字データ(文字列)つまり「皆増・皆減」が入る場合は中央寄せにしたいものです。
数値と同じく右寄せだと、ちょっとカッコ悪い。ですよね?

普通の表でも「数値は右寄せ・文字列は左寄せ」は自動でなるけれど、「数値は右寄せ・文字列は中央寄せ」は自動ではできません。
データを見ながらセル毎に直すのは手間だし間違いのもと。
自動でなんとかしたいものです。

なので、
・数式の結果が数値なら右寄せ(基本通り)
・結果が「文字データ」(文字列)なら中央寄せ
としたいのですが・・・

「条件付き書式」では「配置」が出ない!

セルの中味が数値か否かは以下で判定できます。
=isnumber(対象セル) 
*大文字・小文字問わず(⇒確定後は大文字になる)
*対象セルが(is)、数値(number)か調べる関数

セルの中味が数値なら TURE、そうでなければ FALSE になります。

逆に、セルの中味が文字データならTRUE、そうでなければ FALSE にも表示させることも出来ます。上の数式をNOTで囲めばいいのです。

=not(isnumber(対象セル))

なので、この条件を使って「条件付き書式」で設定すれば楽勝、と思ったのですが・・・

普通の「セルの書式」には「配置」があります。

中央寄せなら、「配置」⇒「横位置」⇒「中央寄せ」でOK。
カンタン、カンタン。
と思ったら、、、

「条件付き書式」からの「書式」には・・・

拡大すると・・・

そう、「配置」がないんです。

おもわず「なんじゃ、こりゃー」(by ジーパン)と叫びたくなります。
*リアルタイムで見てはいないんですけど。


Copilotに聞いてみたら樹海入り

分からないことはCopilotに聞いてみます。
しかし、なんかチンプンカンプン。
全体を中央寄せにして、数値のときだけ(上の数式で判断)、「配置」を右寄せにするとか(当然できない)

全体にインデントを掛ける、とか。

こう断言していたのに、ちょっと突っ込んだら・・・

あっさり、前言撤回です。
解決方法は「VBAのみ」といわれたので、「VBAは使いたくない」と返したら・・・

また同じ提案です。
これ、ダメでしょ。

これを指摘すると、堂々巡り。樹海から抜け出せません。

結局、こんな答え。

「工夫って何?」と聞くと・・・

なんてこったい・・・、です。
要は数値の長さ次第でセルの幅を変えるというもの。
まぁ、パーセント表示なら桁数は定まるけど
こんな感じ?

ていうか、これ↑↑↑、既に数値は右寄せになっていない?
「セルの書式設定」で見てみると・・・

拡大

セルの「横位置」は「中央寄せ」になっているけれど、数値は右寄せになっている。
これでいいんじゃん?
だとしたら、何グルグルまわっていたんだろう・・・(溜息)

でも、普通のデータを中央寄せにすると、文字データ(文字列)だけでなく数値も中央寄せになってしまう・・・

やっぱりダメ? 
どうしたものだろう。

結論
Copilotはあてにならない(今回の質問については)

解決策はある

実はこれ、解決策あります。
なんとか見つけました。
詳細は後日。
興味のある方は、フォローをどうぞ。
「皆増・皆減」を表示する数式も後日掲載します。



いいなと思ったら応援しよう!