[[20040129101526]] 『カンマの場所ですべての数字を整列』(YAMA) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『カンマの場所ですべての数字を整列』(YAMA)

たくさんある、金額をすべて(縦書き)、「,」のところで、揃えたいのですが、
(しかもセルの中央)
過去ログにも、同じ質問があったので、やってみましたが、なぜか
できません。
ユーザ→0.?   というやり方です。何回やっても、うまくいきません。
罫線で囲んであるのですが、それだと、ダメなんでしょうか?
どなたか、回答お願いします、必死。


 まず、罫線は関係ないでしょう。
 ユーザー定義で「0.?」は小数点の位置を揃えるものなので
 桁区切りスタイルの「,」をそろえるものとは別物ではないかと思います。
 「#,##0」の方ではないかと思います。
 それから、「縦書き」となっていますが
 1
 2
 ,
 3
 4
 5
 ↑このようにするというものでしょうか。

 もしくは表示が-90度表示(横に寝ているタイプ)でしょうか。
 (KAMIYA)


すいません。質問の仕方がおかしかったです。「縦書き」というのは、縦の列に
20行以上に渡って、商品の金額が入力してあるのですが、(金額自体は横書きです)
「,」で、キレイに揃えたいのです。右詰めにすると、揃いますが、中央で、
揃えたいのです。KAMIYAさんのやり方で、やってみたのですが、OKをクリック
した後、画面に戻ると、指定した場所だけ、青くなってて、何も、変化していません。
何でしょう???何か根本的な事が、間違ってるのでしょうか?
(やま)

 こういうこと?(YS)

 |  100,000|   →|  100,000  |   
 |    9,938|    |    9,938  |
 |      345|    |      345  |
 |   38,034|    |   38,034  |

 >指定した場所だけ、青くなってて
 ・・・これがどういうことなのか良くわからないのですが、
 YSさんのかいているように
 「右詰め(インデント)」でインデント幅で調整する・・・
 というのとは違うんでしょうか。
 (KAMIYA)

↑そういう事です。ちなみに、「右詰め」といのはありますが、
「右詰め(インデント)」というのは、見当たりませんでした。
左詰にはあるのですが。
「青い」といのは、選択したままに、なっているという事です。
数字を、全部、選択して、ユーザーで、OKをクリックすると、
何も、変わらず、青いまま、という事です。
それと、全然関係ないのですが、同じ名前があるみたいなので、(YAMA)
に、変えます。
YAMA


 青くなってて、というのは範囲選択の状況のことでしたか。
 (まあ、変化しても選択範囲が青いのは同じだと思いますが・・・)
 右詰めインデントは2002からの配置設定です。

 セルのユーザー定義で下記のようにしてみてはいかがでしょう。
 「#,##0_ _ 」
 「_(アンダーバー)」のあとにスペースを追加します。
 これをいくつか繰り返すことで右側の余白を調節できたと思います。
 (KAMIYA)


	7,150
	7,150
	10,450
	10,450
現在、上のように、なっており、罫線で一つ一つ、囲ってあります。
そして、量が、膨大です。一気に、「,」で、そろえたいのです。エクセルは
2000です。KAMIYAさんの、やり方で、今、やろうと、思ったのですが、
アンダーバーって、どうやって、出すのですか?
初心者的な質問で、本当に本当にごめんなさい。
(YAMA)


 アンダーバーはShiftを押しながら「ろ」(文字キー最下段の右端)のキーです。
 (KAMIYA)


 ヨコから失礼します。
 量が膨大なんやったらマクロで一気にっちゅうんはどうでっか?
 試してみる価値は在ると思いまんねんけどなぁ。

 「Alt」+「F11」でVBEを開きます。
 「挿入」→「標準モジュール」で真っ白な画面が表示されます。
 そこへ下のコードをコピペ。
 「Alt」+「Q」でエクセルに戻ります。

 これで準備完了ですワ。
 「Alt」+「F8」でcenterを実行してみてください。
 こんなんでどうでっか。
   ほな・・(弥太郎)
 '-----------------
 Sub center()
    Dim adrs As String

    adrs = InputBox("中央揃えする範囲を入力して下さい")
    Range(adrs).HorizontalAlignment = xlRight
    Range(adrs).NumberFormatLocal = "#,##0_ _   "
 End Sub


KAMIYAさん、ありがとうございました。しかし、「#,##0_ _ 」で、入力したところ、
「入力形式が正しくありません。」と、出てしまいました。左詰めのインデントでも、
試してみましたが、数字がずれるのといっしょに、罫線も伸びてしまいます。
弥太郎さんの方法も試しましたが、コピペして、enter(centerって、enterで、
いいんですよね?)
を、押した後、「範囲を入力して下さい。」と、出るので、入力して、実行すると
(入力しなくても、)「Rangeメソッドは、失敗しました。」と、出てしまいます。
根本的に、2000では、「中央揃えで、「,」で、揃える」というのは、難しいので
しょうか?本を読んでも、すべて、右揃えになってますよね。
(YAMA)


 >しかし、「#,##0_ _ 」で、入力したところ、「入力形式が正しくありません。」と、出てしまいました。
 Excel97で 表示形式#,##0___できましたよ。_ (半角アンダーバー)ではなく_ (全角アンダーバー)にしてませんか?

 >弥太郎さんの方法も試しましたが、コピペして、enter(centerって、enterで、いいんですよね?)
 違いますよ。弥太郎さんは
 > 「Alt」+「F8」でcenterを実行してみてください。
 って書いてありますよね。centerというマクロを実行してくださいって意味です。
 弥太郎さんのコードをコピペしてから「Alt」+「F8」を押すと、マクロを選択するウィンドウが表示されます。
 マクロ名の中にcenterっていうのが表示されているので、それを選択して[実行]を押します。
 すると、範囲を指定するウィンドウが表示されるので、A1:A3のように入力すると、ちゃんとカンマで揃います。

 KAMIYAさん、弥太郎さん、割り込みごめんんさい。
 (YS)


 まず、用語として、「数値を桁区切り記号を基準に中央揃え」はエクセルの仕様上、
 不可能なので「概念として」忘れてください。
 「桁区切り記号のカンマをなるべく中央で揃える」という代替的な機能をご提案しています。

 さて、「入力形式が正しくありません。」はYAMAさんの入力が
 少し不足しているためと想像します。
 「#,##0_ _ 」は、「#,##0」のあとに「アンダーバー、スペース、アンダーバー、スペース」
 と入力しています。最後のスペースが入力されていない場合は前掲のメッセージが
 表示されます。
 書式記号のアンダーバーの意味は
 「アンダーバーの次に続く文字の幅だけスペースを空けて表示する」
 「#,##0」に比べて
 「#,##0_ 」は半角スペースひとつ分
 「#,##0_ _ 」は半角スペース二つ分左側へ寄るはずです。
 これで足りなければ「アンダーバー、スペース」をその分追加して設定します。
 (KAMIYA)


で・・、できました!!!!
何か、根本的な間違いをしていたようです。KAMIYAさん、YSさん、弥太郎さん、
ありがとうございました。これで、先に、進めます。
KAMIYAさん、私の、分かりにくい、質問に、最後まで付き合ってくれて、
ありがとうございます。
本当に感謝です!!
(YAMA)

 (YS)さん、フォローおおきに。出かけてましたもんで助かりました。
 中央揃えのつもりでcenterを使いましたが、なんやしらん誤解を与えてしもたみたい
 で反省してますワ。
 こんどから紛らわしい言葉は使わんようにせなアキマヘンなぁ。
   感謝感激雨霰(ちょっとオーバーでんな)(笑)(弥太郎)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.