• ベストアンサー

マクロで、数値データをテキストデータにするには?

テーブルのあるフィールドを、テキストデータから数値データにデータ系列を変更したいのですが、それを「マクロで」実行したいんですが、できますでしょうか? どうぞよろしくお願いいたします。m(__)m

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

  • ベストアンサー
  • mishida
  • ベストアンサー率34% (19/55)
回答No.3

 マクロでなくとも、以下のようなクエリーを応用してはいかがでしょうか。なお、テーブルの更新は経験的に怖いので、別のテーブルで作業をやられるといいでしょう。 ●「テーブル文字」のフィールド「文字」のデータを「テーブル数字」のフィールド「数字」に格納する。  クエリーは以下のようになります(クエリーの画面を出せないので、SQLで記します。クエリーでSQL画面を表示して以下をコピーペーストするといいでしょう)。   INSERT INTO テーブル数字 ( 数字 ) SELECT テーブル文字.文字 FROM テーブル文字;  さて、事前に、フィールド「文字」(文字型)のある「テーブル文字」とフィールド「数字」(数値型)のある「テーブル数字」を作ります。何かの数字を「テーブル文字」のフィールド「文字」に入れてクエリーを実行すると、自動で型変換され、テーブル数字に格納されます。なお、型変換ができないほど、数字とは似つかないデータの場合には、その行はエラーとなりnullかなにかが格納されると思います。  オーム社のSQL Server 7 MSDE対応という本が、いろいろなSQLの例が出ていて便利です。Access97以降でならば使えると思います。

kouduki
質問者

お礼

mishidaさん、ご回答ありがとうございました! お返事が大変遅くなってしまって申し訳ありません。 上記の方法をご紹介いただいて、テストとしてテーブルとクエリーと、同じ名前を付け、コピーペーストしたのですが、うまくいきましたv ありがとうございました!m(__)m

その他の回答 (2)

  • u_kappa
  • ベストアンサー率30% (6/20)
回答No.2

期待する回答にならないと思いますが、マクロでの開発の場合の手がかりとして・・・。 自分が行いたい動作をマクロで記録してそのマクロを確認してみてはどうでしょうか? 今回に限らず、いろいろなことが確かめられると思います。 ただし、余計な動作も記録されてしまうので、必要な部分だけを切り出すことが重要になります。

kouduki
質問者

補足

u_kappaさん、ご回答ありがとうございます! 申し訳ありません、ソフト名を記載するのを忘れていました。Access2000です。 回答していただいたことは、Excelでの事ですよね。 すみません、今回はAccessでマクロをやりたいのですが、できますでしょうか?m(__)m

  • miya_777
  • ベストアンサー率31% (44/140)
回答No.1

ACCESSのお話しですか?

kouduki
質問者

補足

すみません!ソフト名を記載するのを忘れていました。m(__)m Access2000です。

関連するQ&A

  • テキスト型に入れた値を数値に変換し、「#エラー」を

    テキスト型に入れた値を数値に変換し、「#エラー」を0にしたいです。 access2003です。 テーブル1を ・テキスト型 ・主キーなし として データを 1 2 あ を投入します。 そして SELECT CLng(テーブル1!フィールド1) AS 数値型に変換 FROM テーブル1; クエリを作りました。 このクエリを開くと 1と2は数値に変換されますが、文字列を入れた「あ」は 「#エラー」になります。 「#エラー」を0にしたいのですが どうすえばいいのでしょうか?

  • エクセルのマクロで...

    エクセルのマクロなのですが、うまく実行されません。 sheet1・sheet2とシートがあって、 sheet1のデータを範囲にして、既存のワークシート に保存の形でsheet2にピボットテーブルを作成し、 できたピボットテーブルの、フィールドを"表示しない" にする、というマクロを作成し、実行したのですが、 ピボットテーブルは作成できるところまでは実行される のですが、「フィールドを"表示しない"」が 出来ません。なぜがsheet1の元のデータがデリート されてしまいます。 マクロ初心者なので、困っています。 どなたかご存知でしたらお願いします。

  • 【テーブル作成クエリ】データ型を変更したい

    お世話になります。テーブル作成クエリでテーブルを作成し、その中のあるフィールドのデータ型を自動的に変更するにはどうしたらいいでしょうか? 数値型→テキスト型に変更したいのです。宜しくお願いします。

  • VBAではなく、マクロでのフィルターのかけ方を教え

    accessのVBAではなく、マクロでのフィルターのかけ方を教えてください。 テーブル1には フィールド名:moji データ:テキスト型 文字列1 文字列2 ・ ・ ・ というデータがあります。 テーブル1を基にしたフォームには 画像のように、 コントロールソースにmojiを紐付けたテキストボックスを配置しました。 その際、マクロを実行して「文字列1」を抽出するフィルタの実行をしたいのですが マクロの作り方がわかりません。 マクロのアクションは「フィルタの実行」にしたのですが フィルタ名には何を入れればいいのでしょうか? とりあえずtestと入れました。 次に、Where条件式には [Forms]![フォーム1]![moji]="文字列1" といれました。 この時点ではエラーにならないのですが フォームを開いて、マクロ1を実行すると 「このウィンドウでは"ApplyFilter/フィルタの実行"アクションを実行できません。」 となってしまいます。 マクロの作り方を教えてください。

  • 数値の時ではなく、データがあるとき

    エクセルマクロについて質問です。 以前に教えていただいたコードですが、おそらく指定したセルがひとつのとき反応するコードだと思います。 これを、なおかつ、数値データがあるときに実行するにはどのように変更すればよいでしょうか? 数値データか空白しかありません。 お手数かけますがよろしくおねがいします。 With Target If .Count = 1 Then

  • テーブルのデータをテキストボックスに表示させるには?

    ソース修正をしています。 が、約4年ぶりの仕事で、行き詰まっています。 AccessVBAは初心者です。 この問題で、もう3日を費やしてしまいました・・・。 どなたか、助けてくださいませ!! Formに約10個のテキストボックスがあり、そこにはあるテーブルのデータが表示されるようになっています。 そこで、もう一つ表示させたいデータがあったので 1)Formにテキストボックスを1個追加し、 2)テーブルに一つフィールドを追加し、 3)テーブルにデータを入れるためのINSERT文を修正し、 4)実行してみました。 が、テキストボックスには #Name? が表示されて、どうも思ったと通りに動きません。 テーブルを確認すると、データはちゃんと入っていますが、テキストボックスにはどうしても値が入ってきません。 よろしくお願いします。m(__)m

  • アクセスマクロで、csv データを取り込むときに起こるエラー

    こんにちは、いつも質問ばかりですみません。 WINDOWS2000 で ACCESS 97 ユーザーです。 品番.CSVがあるとします(数千行) 品番は、 100 A100 のように、数字のみやローマ字が入り混じっています。 ACCESS 側に「品番」テーブルを作り、データ型をテキストにします。その上で  ファイル  -外部データの取り込み  -インポート  -次のテーブルに保存する「品番」 でテーブルを指定すると、きちんと入ります。 が、マクロで  テキスト変換  -区切り記号付インポート  -テーブル名「品番」  -ファイル名「品番.CSV」  -フィールド名の設定「はい」 で実行すると、 「品番インポートエラー」テーブルが別に作成され、 A100 を「データ型の変換エラー」と見なしています。 …どうしてでしょう。

  • 外部データを取り込むマクロ

    マクロ初心者です。 デスクトップ上にCSVファイルを出力し、それをエクセルに取り込んで、 そのデータを見やすく加工するマクロを作りました。 自分のパソコンだとうまく実行できますが、 社内の他の人のパソコンだとできません。 CSVのデータは、共有のオラクルからデータを出力しているので、同じものです。 実行しようとすると、 「実行時エラー1004  外部データ範囲を更新するためのテキスト ファイルが見つかりません  テキスト ファイルが移動または名前が変更されていないことを確認し、  再度実行してください」 と言われ、 デバッグするとVBAで .Refresh BackgroundQuery:=False が黄色くなっています。 どうすればうまくいきますか? 教えてください。よろしくお願いします。

  • エクセルでマクロを用い日付をテキスト化したいのですが。

    エクセルで日付をテキスト化するのに、マクロをつかって自動化させたいと考えています。 以下のようなデータを扱っています。 日付  その他  その他  その他 2007/4/26 2007/4/28 2007/5/12 2007/6/12 こういったデータがあり、日付の列を選択し、置換→200を'200にすることで日付をテキスト化したいと思っています。 マクロを作成中は問題なく、置換し、テキスト化が出来ますが。 一度日付データを消し、日付を入れてマクロを実行すると 4/26/'2007 4/28/'2007 5/12/'2007 6/12/'2007 といった感じで実行され、正しくテキスト化されません。 質問にお答えしていただけると大変ありがたいです。 よろしくお願いします。 ※ちなみにマクロは自動記録方式のみで作っています。VBAは修正程度の知識しかないです。

  • EXCELでマクロを用い日付をテキスト化したいのですが。

    エクセルで日付をテキスト化するのに、マクロをつかって自動化させたいと考えています。 以下のようなデータを扱っています。 日付  その他  その他  その他 2007/4/26 2007/4/28 2007/5/12 2007/6/12 こういったデータがあり、日付の列を選択し、置換→200を'200にすることで日付をテキスト化したいと思っています。 マクロを作成中は問題なく、置換し、テキスト化が出来ますが。 一度日付データを消し、日付を入れてマクロを実行すると 4/26/'2007 4/28/'2007 5/12/'2007 6/12/'2007 といった感じで実行され、正しくテキスト化されません。 質問にお答えしていただけると大変ありがたいです。 よろしくお願い致します。 ※ちなみにマクロは自動記録方式のみで作っています。VBAは修正程度の知識しかないです。

専門家に質問してみよう