• ベストアンサー

20000万円を2億にするにはどうすればいいですか

アクセスのテーブルのフィールドに 金額と言う名前を作りデータ型は通貨型としました。 値は 10000000 200000000 が入っています。 このテーブルを基に帳票フォームを作ったのですが この時 \10,000,000を1000万 \200,000,000を2億 と表示させるにはどうすればいいですか? 金額のテキストボックスの書式を 「#,###"/10000円"」 とすると、 10,000,000/10000円 200,000,000/10000円 になってしまいます。 クエリを介してどうにかすればいいのでしょうか? SELECT [テーブル1]![金額]/10000 AS 金額 FROM テーブル1; にして、フォームのレコードソースにクエリ1 を紐付けて書式を「#,###"万円"」にしましたが、 このままでは 1000万円 20000万円 です。 20000万円を2億にするにはどうすればいいですか?

質問者が選んだベストアンサー

  • ベストアンサー
  • piroin654
  • ベストアンサー率75% (692/917)
回答No.1

以下にまったく同様の質問があります。 http://okwave.jp/qa/q7853442.html ベストアンサーの回答は試していませんが、 たぶん、質問の意に沿った回答だと思います。 No1の私の回答は勘違いなので、No3とNo4が 回答になります。 私の回答を質問にあてはめると、 SELECT テーブル1.金額, funcnum([金額]) AS 変換金額 FROM テーブル1; ということになります。 関数のfuncnumは標準モジュールに保存しておけば どこからでも呼び出し、利用することができます。 なお、 funcnum([金額]) AS 変換金額 を funcnum([金額]) AS 金額 のようにすると、[金額]を循環参照してエラー となるので気をつけてください。 「変換金額」は他の適当な名前に変更してください。 簡単に確認する方法は、三つの関数を標準モジュールに 貼り付け、保存した後、イミディエイトウィンドウ を表示し、 ?funcnum("200,000,000") とすれば、 2億 と表示されます。また、 ?funcnum("3,605,000,000") とすれば、 36億500万 と表示されます。

vmjvyhrvl6
質問者

お礼

回答ありがとうございました。

関連するQ&A

  • Requeryしても並べ替えはされないのでしょうか

    【条件】*************************** (テーブル1) フィールド1 1 2 3 4 5 (クエリ1) SELECT テーブル1.フィールド1 FROM テーブル1 ORDER BY テーブル1.フィールド1; (フォーム1) レコードソース:クエリ1 既定のビュー:帳票フォーム コマンド3:コマンドボタン Private Sub コマンド3_Click() Me.Requery End Sub ************************************ 上記の条件で、3レコード目の「3」を「10」に変更し、 コマンド3を押下しても、10は3レコード目のままです。 フォーム1をバツボタンで閉じて、フォーム1を開きなおすと10は一番下に来ます。 Requeryで更新しているのに、なぜ並び替えがされないのでしょうか?

  • 0の時は0円にするにはどうすればよろしいでしょうか

    テーブルのデータ型は数値型で 金額フィールドには  0  10  100 という数字が入っていて、そのフィールドに紐づいたフォームがあり そのフォームの書式を 0"万円" にしてるのですが、 この時データの値が10なら「10万円」、100なら「100万円」になりますが 0の時も「0万円」になってしまいます。 0の時は0円にするにはどうすればよろしいでしょうか?

  • 0なら円を消す(非表示)方法は?

    テーブルのフィールドの型は通貨型にしていて 金額 ¥100 ¥0 ¥200 と言うデータが入っています。 それをフォームのテキストボックスでは、表示形式を#,###\円にしてるのですが、 そうすると0の場合は、円のみ表示されてしまいます。 0の時は円を表示しない方法はありますか? 思いつくのは条件隙書式か、クエリで0を""にしちゃうかですが この表示形式で操作する方法はないのでしょうか?

  • accessの書式(金額表示)について

    accessの金額表示について教えてください。 下記のような、レコード毎に累計金額が表示されるよう、 クエリ画面でDSum関数を使いました。 SELECT 伝票.伝票番号, 伝票.日付, 伝票.入金, 伝票.出金, DSum("入金-出金","伝票","伝票番号 <= " & [伝票番号] & "") AS 累計金額FROM 伝票; 結果、数字に間違いはありませんでしたが、 通貨表示にしたかったので、フィールドプロパティの書式を 変更しようとしました。 書式の部分に「\\00,000」と入力してみたのですが、 通貨表示になりませんでした。 何か勘違いをしているのかもしれませんが… どうぞ、ご教授ください。 ちなみに、「伝票.入金」、「伝票.出金」フィールドは伝票テーブル作成時にデータ型を通貨型としています。

  • Sum・クエリ・テーブルの特定の合計をフォームのテキストボックスに表示したい

    テーブル1に番号フォールドと金額フィールド(通貨型)があり、 番号   金額 001    \1 002    \2 003    \3 ・ ・ ・ とデータが入力されています。 フォーム1にテキスト0を設置しました。 そこに「番号001の金額フィールドの合計額を表示したい」のですが どうすればいいのでしょう? SQL文で言うと SELECT テーブル1.番号, Sum(テーブル1.金額) AS 金額の合計 FROM テーブル1 GROUP BY テーブル1.番号 HAVING (((テーブル1.番号)="001")); なので それを テキスト0のコントロールソースに "SELECT テーブル1.番号, Sum(テーブル1.金額) AS 金額の合計 FROM テーブル1 GROUP BY テーブル1.番号 HAVING (((テーブル1.番号)="001"));" と入れましたが ただテキストボックスにSQL文が表示されるだけでした。 (番号フィールドは主キーではなく重複するレコードもあります) どうすれば、いいのでしょうか? ご教授よろしくお願い致します。

  • access レコードソースを選択し、DoCmd.OpenFormする方法

    Select Caseのフレームで、レコードソース(クエリ)を選択し、 そのソースを基にDoCmd.OpenFormする方法がわかりません。 よろしくお願いします。 ---------------------------------------------------- Dim strSource As String Dim Q1, Q2 As String Dim stDocName As String Dim フォーム1 As Form stDocName = "フォーム1" Q1 = "クエリ1" Q2 = "クエリ2" Select Case フレーム1 Case 1 strSource = Q1 Case 2 strSource = Q2 End Select 'stDocName.RecordSource = strSource '-----この文はこの位置でよいのでしょうか? DoCmd.OpenForm stDocName, acFormDS ---------------------------------------------------- クエリ1,クエリ2は基になるテーブルが違いますが、フィールドは同一にしてあります。 ですのでフォーム1には、対応するテキストボックスは用意してあります。

  • パラメータクエリを一つにまとめたい

    クエリ1を基にフォーム1を作成、 クエリ2を基にフォーム2を作成、 クエリ1も2もパラメータクエリを使用していて フィールド名は「番号」データ型はテキスト型です。 そして新規にフォーム3を作成しフォーム1とフォーム2をドラッグしました。 この状態でフォーム3をダブルクリックすると パラメータの入力を2回求められますがどちらも同じ番号を入力しています。 (「001」などを2回入力) これを1回にすることは可能でしょうか? ・番号フィールドの基テーブルはクエリ1と2は違うテーブルです。 ・クエリ1と2は一つにまとめたくありません。 フォーム3上に別々に表示させたいです。 ・クエリ1には全ての番号がありますがクエリ2には抜けている番号があります。 「クエリ1の全レコードとクエリ2の同じ結合フィールドのレコードだけを含める。」で全ての番号を表示できる状態です。 説明が下手ですいません。 アドバイスお願い致します。

  • アクセスクエリ メモ型だとエラーになる

    アクセスのテーブル1(主キーなし)に *********************************************************** フィールド1(メモ型) あああ いいい ううう いいい *********************************************************** と言うデータがあるのですが 「あああ」「ううう」は1個で「いいい」は2つあります。 これを、クエリ1で *********************************************************** SELECT テーブル1.フィールド1, Count(テーブル1.フィールド1) AS フィールド1のカウント FROM テーブル1 GROUP BY テーブル1.フィールド1; *********************************************************** と作り、 新しいクエリで *********************************************************** SELECT テーブル1.フィールド1, クエリ1.フィールド1のカウント FROM テーブル1 INNER JOIN クエリ1 ON テーブル1.フィールド1 = クエリ1.フィールド1; *********************************************************** としたいのですが、 メモ型ではダメなのでしょうか? メモ型でフィールドを宣言しつつ、 このようなクエリを作るにはどうすればいいですか? テキスト型にすると問題なくいけます。

  • ACCESS クエリの抽出条件

    毎度お世話になります。 クエリをレコードソースとするフォームから、コマンドボタンでアクションクエリを実行するときの抽出条件の書き方を教えて頂けないでしょうか? 二つのテーブル(別のACCESSファイルからリンク)を基にパラメータクエリを作っています。 そのクエリを基にフォームを作っています。 さらに、そのフォームに追加クエリを実行するボタンを置いています。 フォームに表示してあるレコードだけ(パラメータで抽出されたレコードだけ)、他のテーブルに追加しようと思っているのですが、実行ボタンを押すともう一度パラメータが出てきてしまいます。 多分テキストボックスの値を読み取る際にレコードソースがテーブルでないのが問題じゃないかと思うのですが。。。 テーブル:Container / Items クエリ:From_Con(パラメータは[Container]フィールド) フォーム:From_Con(テキストボックス名は[txtContainer]) 追加クエリ:From_Con_App(抽出条件は[Forms]![From_Con]![txtContainer]としてみたがうまく動きません。) デザインビューの抽出条件を使う方法? SQLを使う方法? QueryDefを使う方法? いろいろありそうですが、ネットで検索してもヒットしません。 分かりにくい説明で申し訳ありませんがご教授願います。

  • フォームのレコードソース(Access2000)

    質問させていただきます。 フォームの「レコードソース」でテーブルとクエリーのほかに、「SELECT テーブル名、フィールド名・・・」というのがあります。これもクエリーなのでしょうか? ちなみに、レコードソースの右にある「---」をクリックすると「SQLステートメント:クエリビルダ」というものが開きます(クエリー画面と同じ?)。 また、フォームのレコードソースはテーブル、クエリー、SOLステートメントのどれにすれば良いのでしょうか?

専門家に質問してみよう