種ヶ島

いろいろなエッセイを書いてます。

エクセルのマクロで、数値の単位を簡単に設定する


スポンサーリンク

Excel VBAで、数値の単位を簡単に設定する方法です。

例えば、セルの表示が12gで、入力値は12にしたい時に使います。

 

エクセルで計算する時に

セルの表示が「12」だと、何を計算しているのか混乱してくるので、「12g」と表示させたいです。

 

でも、「12g」と入力すると、数値ではないので、計算できません。

 

そこで、「12」と入力して、Ctrl+1からのセルの表示形式を選択していては時間がかかるので、表示形式をマクロで設定します。

 

手動の場合は、Ctrl+1 → ユーザー定義

→ 種類(T):の下の入力欄に『0"g"』と入力します。

 

マクロの場合は下記のコードで簡単に設定できます。

クイックアクセスツールバーや、Excel2010ならリボンに登録できると思います。

 

下の方にコードが書いてあります。

ゼロの右側に半角スペースを入れてありますが、

「132 g」と表示されます。半角スペースをいれないと

「132g」と表示されてしまい、12という数値に書式を設定しているのか、12gという文字なのかが分からないからです。

 

書式設定が「0」なので、「0.0」とか「??0」など、自由に変更して下さい。

 

また、二番目のコードを実行すると、単位の入力フォームが出てきますので、

「/年」とか「g/cm2」とか「回/月」などと入力できます。

 

エクセルのマクロで、グラフのタイトルと軸の名前を入力して効率化 - 種ヶ島

エクセル 桁を揃える方法 - 種ヶ島

お役に立てたら幸いです。

 

Sub g()
Selection.NumberFormatLocal = "0 ""g"""
End Sub

 

~~~~~~~~~~~

 

Sub uinput()
'任意の単位を設定
'入力フォームと変数の組み合わせ
'fo = "0 " + ti よく分からないけど、←のコードはエラーになる ↓は大丈夫みたい 2015-02-25

Dim ti, fo As String

ti = Application.InputBox(prompt:="単位を入力", title:="単位", Type:=2)
fo = "0 " + """" + ti + """"
Selection.NumberFormatLocal = fo

End Sub