数量と単価を掛け算して金額を出すマクロを組んでいます。
(数量 * 単価 = 金額)
例えば、数量が5829、単価が9.98だと金額は58173.42になると思います。
(5829 × 9.98 = 58173.42)
小数点第2位までを表示させるためには、どのような書き方で表示できますでしょうか?
私のほうで色々錯誤してるのですが、小数点第2位までの表示は出来るのですが、マクロ実行後に
#####.00というように0表示になってしまいます。
上記のように「58173.42」まで出すようにしたいのですが、0表示や数値の丸め無く表示させるにはどうすればよいでしょうか。
アドバイス等くだされば幸いです。
宜しくお願いいたします。
No.3ベストアンサー
- 回答日時:
こんばんは、
不思議ですね。実際の表示される値は、幾つなのですか?
58173.00 それとも 58174.00 はたまた、58290.00
セルの書式設定とか、VBAでRound?関数とかFormat 関数とか使っていませんか?
セルの書式が標準なら、VBAで、
そのまま、Range("A1") = 5829 * 9.98
A1の値は58173.42
仮に変数に代入しているとして、すべてがVariantなら
dim val1,val2
val1=5829
val2=9.98
Range("A1") =val1(Variant/Integer)*val2(Variant/Double)()内は型
で出力できるかと
もう一つ変数を使用する場合
dim val1,val2
dim test
val1=5829
val2=9.98
test=val1*val2
testはVariant/Doubleで問題ない
Range("A1") =test
ちなみに
integerの場合 オバーフロー
long の場合 整数
58290.00の場合は、変数型がLongになっている可能性が高いので確認してください。
58173.00の場合
Round関数やROUNDDOWN関数を使用している場合は、桁数設定を確認してみてください。(Format 関数も確認)
58174.00の場合
上記同様にROUNDUP関数を確認してください。
使用していない場合は、セルの書式設定をご確認ください。
(Format 関数も確認)
回答ありがとうございます。
マクロを確認したらデータ型が定義されていませんでした。
今回、double型で定義したところ意図通り小数点第2まで表示されるようになりました。恐らく前任者が定義せずに作成していたようです。
詳細にアドバイス頂きありがとうございました。
また何かあれば宜しくお願いいたします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
あなたが普段思っている「これまだ誰も言ってなかったけど共感されるだろうな」というあるあるを教えてください
-
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
VBA:小数点以下の数字を取得できる関数は?
Visual Basic(VBA)
-
worksheetFunctionクラスのVlookupプロパティを取得できません エラーへの対応
Visual Basic(VBA)
-
-
4
VBA 数式を残して値をクリアについて
Excel(エクセル)
-
5
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
6
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
7
アクセスでの演算で少数点第1位まで表示するには。
Access(アクセス)
-
8
vba 時間の引き算 例えば 15:00から16:15の間の時間は1時間15分ですが、vbaのコード
Visual Basic(VBA)
-
9
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
10
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
11
cellsで特定の離れた範囲を選択する方法は?
Visual Basic(VBA)
-
12
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
13
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
14
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
15
エクセルマクロで「1」を「01」に変換したい
Excel(エクセル)
-
16
VBAで配列の計算
Excel(エクセル)
-
17
VBA 変数名に変数を使用したい。
Visual Basic(VBA)
-
18
vba 2つの条件が一致したらコピーして別シートに値のみ貼り付け
Visual Basic(VBA)
-
19
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
20
Excelで数値→文字列変換で指数表示になったものをいっぺんに直したい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
交通費自動精算Excelマクロにつ...
-
エクセルのマクロについて教え...
-
VBA 別ブックからコピペしたい...
-
VBA初心者です。次のVBAコード...
-
エクセルのマクロについて教え...
-
2つのマクロでチェックボックス...
-
【ExcelVBA】インデックスが有...
-
A列に記載されているフォルダ...
-
pdfファイルの複数添付 引数の型
-
for 文の 繰り返し処理に使える...
-
エクセルファイルのデータ転記...
-
Excel VBAで値を変えながら、pd...
-
ExcelVBAのFindFirstエラ...
-
[VB.net] ボタン(Flat)のEnable...
-
Outlookの「受信日時」「件名」...
-
VBA実行後に元のセルに戻りたい
-
VBA コードどこがおかしいですか?
-
Vba UserformからExcelシートの...
-
VBA 円グラフ 特定条件に一致し...
-
Excel_VBAについて質疑です。(...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【VBA】計算結果に小数点第2位...
-
チェックボックスのある行を非...
-
MsgBoxの中にある数字や日付の...
-
VBA 条件付き書式で空欄は適用...
-
マイナス記号を▲で表す方法
-
クリスタルレポートの改ページ...
-
POIを使った書式設定
-
VBでエクセル出力の文字を太字...
-
FORMAT関数で値が変わる
-
spread6.0(セル連結)
-
VBA コンボボックスの表示(日...
-
『"』に『\\』がついてしまう
-
grep で複数条件を指定
-
コンスタント変数について
-
JExcelで警告が出て書式が設定...
-
IF関数とCOUNTIF関数の混在した...
-
C#にて、他言語にローカライズ...
-
エクセルのメモについて教えて...
-
jpgraph が表示されない
-
EXCELのマクロで別のファイルの...
おすすめ情報