[[20030904163839]] 『条件付き書式で文字の配置を設定したい』(中級君) ページの最後に飛ぶ
[
初めての方へ |
一覧(最新更新順) |
全文検索 |
過去ログ ]
『条件付き書式で文字の配置を設定したい』(中級君)
いつも参考にさせていただいております。
ありがとうございます。
さて、条件付き書式で、例えば、セルの値が「…」や「―」であった
場合に、右揃えではなく、中央揃えに書式を自動的に設定するような
ことはできますでしょうか?
なにか明案がありましたら、ご教授、よろしくお願いします。
- 迷案ならありますが…。Alt + F11 を押し、「挿入⇒標準モジュール」で、白紙のモジュールに、次のコードを書き込みます。
Sub Cntr()
Dim Cc As Range
For Each Cc In Selection
Range("A1") = Cc
If Range("B1") Then
Cc.HorizontalAlignment = xlCenter
End If
Next
End Sub
- Alt + F11 を押して、エクセルに戻って下さい。
- 任意のセル範囲を選択して、Alt + F8 を押し、Cntr というプログラム名を探して、実行をクリックして下さい。しかし、その前にしておかなくっちゃいけないことがあります。
- たとえば、田中という姓の人をセンタリングする場合は、B1 に、=if(left(A1,2)="田中",1,0) と式を入れておいて下さい。田中〜氏なら、B1 は 1 になります。そうでなければ、0になります。
- さて、プログラムは、選択範囲の最初のセル内容を A1 にコピーします。すると、B1がA1 を評価して、その結果、B1 が1または0となります。プログラムは、B1 が1になったら、審査中のセルを中央寄せします。選択範囲の次のセルに移ります。これを選択範囲の最後までやります。
- A1 や B1 は、コードの記載を変えれば、好きなセル番地が使えます。中級君がコードを書き換えるのに不慣れでなければ、こんなややこしいことをしなくても、直接コードに条件を書いて下さい。
- B1 の条件は、1か0を(または、true か false を)返すのであれば、どんな式でも結構です。ここは、普通のエクセルの数式が書けます。=if(iserror(find("一郎",A1)),0,1) は、「一郎」を含むかどうかを判定しています。また、マクロは、ボタンなどに登録する、または、ショートカットキーを設定する、などもできます。(通りすがりの者)
素人ですが関数でのやり方では=IF(A3="\\\", "△△△\\\",A3)とする様に前にスペース(△はスペース)を入れて中央になる場所に設定してみたら如何でしょう。
この場合はセルA3に\\\と入力すると計算先のせるでは |△△△\\\|となり\\\以外を入力するとA3をそのまま表示します。
""で囲むことにより数値以外も関数で表示します。
初めての書き込みなので、全然質問の意味と違う回答をしてるかも知れませんが。(橋の下から)
- いえ多分、意味の正しい解答だと思います。ぼくもその方法を考えましたが、中央寄せは、意外とずれるのを嫌う人が多いので、ちょっとまずいかなと思ったのです。
- ただし、セル幅を決めておくと、文字列の長さとの関係で、いくつ空白をいれれば、まあ、擬似的に中央化するかわかるので、計算式がちょっと長ったらしくなりますが、空白部分を加減することにして、ある程度のことはできると思います。しかし、なおかつ、文字幅でしか加減ができないところが、泣きですねぇ。
- 中級君の狙いは、やはり、条件付書式をなんとか使ってやりたいということで、我々のような姑息な手段を使うことは考えていなさそうですが…。(通りすがりの者)
お使いのExcelが2002なら、置換で書式設定できます。
2002なら...(汗)。
(ramrun)
そうですか。それは素晴らしい! では中級君の解決法はすごく簡単。2002に
換えればいい。いずれ換えるのですから。(通りすがりの者)
あっ、OpenOfficeのCalcは条件付書式でできますね。
でもExcelに持ってこれない... 意味ない(汗)。
(ramrun)
えっ!? オープンオフィスが本家をしのいでいる? なんとショッキングな!
(通りすがりの者)
わたのは姑息過ぎですね。
書き込み者の意図を勉強してみます。
恥ずかしい。(橋の下から)
姑息度表示
[橋の下から]<[通りすがりの者] (通りすがりの者)
いやぁ〜 ここは相変わらず変な人ばっかりですね(笑)。
本当はExcelのデータをCalcの条件付書式で中央揃えにして、
元のExcelに貼り付けるっていうシナリオから、
感動のエンディングへ誘うはずだったんですが(汗)。
姑息度表示
[橋の下から]<[通りすがりの者]<[ramrun] (ramrun)
なるほど、なるほど、いったんオープンオフィスへ行ってくる、ですねぇ!
. . . . .
. . . . .
どうコメントしていいか......。(通りすがりの者)
本日、みなさまの貴重なご意見を拝見させて頂きました。
本当にこの掲示板のご意見はとても役に立ちます。
みなさま、書き込み、ありがとうございました。
(中級君)
コメント返信:
[ 一覧(最新更新順)
]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.