

上記内容で四苦八苦しているVB初心者です。
Microsoft Visual Studio / ActiveReportで帳票を作成しています。
DBからの値が、小数点以下ありの場合(例:1.7)の時はそのまま表示し、小数点以下が0の場合(例:1.0)の時、整数部分のみを表示させたいのです。
質問の『値』ですが、今回の値は小数点第一位までです。
#.0 の時 → # と表示。
#.1~9 の時 → そのまま表示。
としたいのです。
稼働環境はWinXP、Win7です。
ちなみにイメージしていただくために・・・
既に別の条件で、
『If H_数量.Text = "0.00" Then
H_数量.Text = ""
H_単価.Text = ""
End If 』
というコードを書いているのですが、この、『H_数量』が問題の値部分です。
H_数量 の値が小数点以下ありの時、0の時、
での条件式となります。
よろしくお願いします。
No.5ベストアンサー
- 回答日時:
>H_数量.Text = Format(H_数量.Text, "#,##0")
>は、全行 #,##0 と表示されてしまいました。
こちらは、.NETじゃないので確認はできませんが、
H_数量.Text = Format(Val(H_数量.Text), "#,##0")
のようにValを付けてみてください。
Val関数は、文字列を数値に変換する関数です。
Format関数は、本来は数値を文字列に変換する関数です。
VBは数値が入っている文字列も数値と解釈されることがあるため、Valを使わなくても大丈夫でしたが、
.NETではそれがダメなようです。
ただ、他の言語にしてみればそれが普通なんですけどね。
nag0720様!
できました!!!
ありがとうございます(≧▽≦)~~~!!!
これで少数桁ありなし用で2枚用意していた帳票が1枚で済ませられます。
また、今回質問したことで色々勉強になりました。
本当にありがとうございました☆☆☆
それから、環境も書かずに質問して皆様にお手間を取らせてしまったこと、
この場をお借りしてお詫びいたします。
初心者ながら、そういう基本的なところは今後気をつけたいと思いますm(__)m
No.3
- 回答日時:
H_数量.Text = Format(H_数量.Text, "0.0")
If Right(H_数量.Text, 2) = ".0" Then
H_数量.Text = Format(H_数量.Text, "0")
End If
ではどうですか。
ありがとうございます。
結果としては、ダメでした。
H_数量 の欄が全て『0』となってしまいます。
環境は.NET なのですが、この環境ではFormat関数をこのように使うことは出来ないのでしょうか・・
単純に、
H_数量.Text = Format(H_数量.Text, "0")
を試すと、全行 0
H_数量.Text = Format(H_数量.Text, "#,##0")
は、全行 #,##0 と表示されてしまいました。
引き続きアドバイスお待ちしております。
No.2
- 回答日時:
下記ではダメでしょうか
---
Format(H_数量,"0.#")
ありがとうございます。
整数部分のみ表示したいので、Format(H_数量,"0.#")ではなく、
● If H_数量.Text = Fix(H_数量.Text) Then
H_数量.Text = Format(H_数量, "0")
End If
● If H_数量.Text = Fix(H_数量.Text) Then
H_数量.Text = Format(H_数量, "#")
End If
としてみましたが、どちらもダメでした。
Fix(▲▲) 、 Format(◆◆)
関数の後にくる▲▲と◆◆がダメなのでしょうか?
H_数量 は、帳票上のTextBox で Datafield = 数量
「数量」はDBのフィールド名です。
例にあげたコード
If H_数量.Text = "0.00" Then
H_数量.Text = ""
H_単価.Text = ""
End If 』
(H_数量が0.00の時、H_数量欄とH_単価欄は空欄にする)
はちゃんと動いているのですが。。
No.1
- 回答日時:
元の値の小数部を切り捨てた値と元の値を比較して、同一の場合は小数部0と判定すれば
良いと思います。
例.If H_数量.Text = FIX(H_数量.Text ) THEN
という感じです。
さっそくありがとうございます。
ただ、私の力ではコードが完成しません(><)
If H_数量.Text = FIX(H_数量.Text ) THEN
H_数量.Text = Fix(H_数量.Text)
End If
でしょうか?
しかしこれでは帳票が表示できませんでした。
THEN のあと、 H_数量 の整数部分のみ表示 するコードはどう書けば良いでしょうか?
初心者過ぎてすみません!!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームにて指定のフィールドの平均値を小数点第一位で表示できない 2 2022/08/30 17:19
- Visual Basic(VBA) visual basic初心者です。 visual studioで電卓を作成しています。 実行時にテ 1 2023/02/08 00:18
- Excel(エクセル) Excelのtextboxへの入力で小数点以下に0が続く場合でも正しく表示したい 3 2022/04/11 13:53
- その他(パソコン・スマホ・電化製品) pthonのframeに演算結果(数値)を表示したい 1 2023/06/05 22:08
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/02/18 11:30
- Excel(エクセル) エクセルの数式で教えてください。 3 2023/03/16 11:19
- 数学 以下の問題が分かりません。 8ビット浮動小数点数が、最上位ビットから順に符号1ビット、指数部3ビット 4 2023/07/22 16:06
- Excel(エクセル) Excelのマクロについて 2 2022/06/14 03:38
- Excel(エクセル) 条件付き書式の設定方法を教えて下さい。 2 2023/04/14 18:12
- 情報処理技術者・Microsoft認定資格 情報技術の問題についてです。 10進数の−36を以下のような16ビットの浮動小数点表示にするといくつ 3 2022/05/21 19:53
このQ&Aを見た人はこんなQ&Aも見ています
-
VB初心者。小数点以下の表示でつまづいています(2
Visual Basic(VBA)
-
VB.NETで小数点以下の桁数を取得したい
その他(ソフトウェア)
-
文字列で小数点以下の0を削除したい
Visual Basic(VBA)
-
-
4
String"から型'Double'への変換は無効です。 とエラーが出ます。
Visual Basic(VBA)
-
5
VB.NETでのイベントの途中終了
Visual Basic(VBA)
-
6
VB.NETで DataRow()を利用して、値からコードを取得したい。
Visual Basic(VBA)
-
7
VB.NET DataGridView 縦スクロールバーを常に表示
Visual Basic(VBA)
-
8
VBA:小数点以下の数字を取得できる関数は?
Visual Basic(VBA)
-
9
データグリッドビューの一番最初の行に列を追加したい
Visual Basic(VBA)
-
10
VB.NET2005 TextBox 高さ(Height) 変更
Visual Basic(VBA)
-
11
CloseとDisposeの違い
Visual Basic(VBA)
-
12
Designer.vbは直接コードをいじってはだめ?
Visual Basic(VBA)
-
13
DataGridViewの桁数制限に関して
Visual Basic(VBA)
-
14
Chr(13)とChr(10)の違いは?
PowerPoint(パワーポイント)
-
15
小数点を含む数値かどうか判断の判断方法
Visual Basic(VBA)
-
16
Visual Basic.NETの、Form 間での引数の引渡し方法を教えてください。
Visual Basic(VBA)
-
17
カンマの含まれる文字列の数値変換方法について
Visual Basic(VBA)
-
18
別フォームから戻ったときのイベント
Visual Basic(VBA)
-
19
変数の参照でエラーが出てしまいます。(VB.NET)
Visual Basic(VBA)
-
20
VB2005のTextBoxでカンマ区切りの表示
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
今、見られている記事はコレ!
-
弁護士が語る「合法と違法を分けるオンラインカジノのシンプルな線引き」
「お金を賭けたら違法です」ーーこう答えたのは富士見坂法律事務所の井上義之弁護士。オンラインカジノが違法となるかどうかの基準は、このように非常にシンプルである。しかし2025年にはいって、違法賭博事件が相次...
-
釣りと密漁の違いは?知らなかったでは済まされない?事前にできることは?
知らなかったでは済まされないのが法律の世界であるが、全てを知ってから何かをするには少々手間がかかるし、最悪始めることすらできずに終わってしまうこともあり得る。教えてgooでも「釣りと密漁の境目はどこです...
-
カスハラとクレームの違いは?カスハラの法的責任は?企業がとるべき対応は?
東京都が、客からの迷惑行為などを称した「カスタマーハラスメント」、いわゆる「カスハラ」の防止を目的とした条例を、全国で初めて成立させた。条例に罰則はなく、2025年4月1日から施行される。 この動きは自治体...
-
なぜ批判コメントをするの?その心理と向き合い方をカウンセラーにきいた!
今や生活に必要不可欠となったインターネット。手軽に情報を得られるだけでなく、ネットを介したコミュニケーションも一般的となった。それと同時に顕在化しているのが、他者に対する辛らつな意見だ。ネットニュース...
-
大麻の使用罪がなかった理由や法改正での変更点、他国との違いを弁護士が解説
ドイツで2024年4月に大麻が合法化され、その2ヶ月後にサッカーEURO2024が行われた。その際、ドイツ警察は大会運営における治安維持の一つの方針として「アルコールを飲んでいるグループと、大麻を吸っているグループ...
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストボックスのvalueとtext...
-
一つの画面で複数のパラメータ...
-
値を返さないコード パス
-
シーケンサで最小値を保持する
-
他のformのコントロールの値の...
-
VB6のデータを保持したい
-
チェックリストボックスの見え...
-
VBAのIF分で値を入れる場合
-
Request.QueryString への値の...
-
マクロ 特定のセル値のみクリ...
-
C# get set
-
VBA ドロップダウンリストを残...
-
Dbtypeって?
-
C#の質問です
-
コンボボックスの幅の変更について
-
ISDBNULLをスルーしてDBNULLが...
-
VB.NETでコンボボックスの1行目...
-
ASPの変数の値をJAVA Script内...
-
pingを行うプログラム
-
windowsアプリケーションで小数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
テキストボックスのvalueとtext...
-
VBA ドロップダウンリストを残...
-
VB.NETでコンボボックスの1行目...
-
Excel VBAのリストボックスの値...
-
C#の質問です
-
VB初心者。小数点以下の表示で...
-
変数に代入してある数値を表示...
-
値を返さないコード パス
-
マクロで奇数と偶数の値を2か所...
-
DataGridView1のcellで計算
-
vb6のVSFlexGridで選択行、列の...
-
PL/SQLでのTO_DATEの時間取得に...
-
setcookieで「path」に複数の値...
-
変数名の取得
-
ACCESS VBA 画像ファ...
-
vbscriptを使いexcelを参照して...
-
Excel VBA 複数選択したリスト...
-
【C++/CLI.NET】コンボボックス...
-
シーケンサで最小値を保持する
-
マクロ 特定のセル値のみクリ...
おすすめ情報