- ベストアンサー
Excelvbaでの表示形式
みなさんいつも強力な助言ありがとうございます。 VBA初心者なので、よろしくお願いします。 Excel2002を使っています。 0と入力したら、0.000と表示させたいのですが・・・ ユーザー定義からのやり方は、知っていますが VBAでも可能でしょうか? target="0.000"としても0しかでません。 やはり、ワークシートの設定も必要なのでしょうか? 初歩的な質問ですみません。 どなたか教えて下さい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ユーザー定義からの指定のしかたが分かるなら、マクロの自動記録でとりあえずやってみて、コードを確認すればどうすればよいかおのずと分かるでしょう。 ちなみに自動記録でやったらこんなコードを吐き出してくれました。 ActiveCell.FormulaR1C1 = "0" Range("A2").Select Selection.NumberFormatLocal = "#,##0.00" これを精製すれば Range("a1") = "0" Range("a1").NumberFormatLocal = "#,###0.000" こんな感じ。
その他の回答 (1)
- imogasi
- ベストアンサー率27% (4737/17070)
(1)値を変えても良いのなら Sub test01() For i = 1 To 7 'Cells(i, 2) = Format(Cells(i, 1), "##,###.####") Cells(i, 2) = Format(Cells(i, 1), "##,##0.0000") Next i 'Range("a1") = Format(Range"a1"), "##,##0.0000") End Sub 上のCellsは0.23に、下のCellsは0.2300式に表示される。 Rangeの例は1セルだけ設定する時はこのほうが判りやすいか。 0.0024--- .0024 0.12356-- .1236 0.23523-- .2352 0.23----- .2300 123.23--- 123.2300 12.569--- 12.5690 0-------- .0000 (2)表示形式だけ変える Sub test02() For i = 1 To 7 Cells(i, 2).NumberFormat = "##,###.0000" Next i End Sub 0.0024--- .0024 0.12356-- .1236---0.12356(値は元のまま) 0.23523-- .2352---0.23523(値は元のまま) 0.23----- .2300 123.23--- 123.2300 12.569--- 12.5690 0-------- .0000
お礼
色々なサンプルありがとうございます。 非常に勉強になります。 ありがとうございました。 aki
お礼
VBAVBAとばかり考えていて便利なマクロを 忘れていました。 まだまだ、勉強不足ですみません。 やりたいことを、マクロで色々やってみます。 ありがとうございました。 aki