• ベストアンサー

アクセスのクエリで英数混在から数字表示させたい

こんにちは。 いま、アクセスを使ってコード(英字)と数字のまざっているデータを 数字だけ取り出して、表示するのに困っています。 名前、住所、コードというデータの並びが有って、 この「コード」というのが、最初にアルファベットが 数文字(文字数はランダム)、その後に数字が数桁入った データになります。 (例)hut558764、lwe41887 これをクエリの作業だけで、数字のみの表示にさせるには どういう式をいれたら良いのでしょうか? (例)558764、41887 また、式はどの部分に入れれば出来るのでしょうか? 宜しくお願い致します!

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

  • ベストアンサー
  • kurodai2
  • ベストアンサー率38% (77/202)
回答No.2

クエリだけでは、無理なので 数値だけを取り出す関数を、標準モジュールに作り クエリの中から、その関数を使えば 可能です 標準モジュール *パブリックで Public Function Get_numeric(source_str As String) Dim leng As Integer Dim pos As Integer Dim suuchi As Variant suuchi = "" leng = Len(source_str) For pos = 1 To leng If Mid(source_str, pos, 1) >= 0 And Mid(source_str, pos, 1) <= 9 Then suuchi = suuchi & Mid(source_str, pos, 1) End If Next Get_numeric = suuchi End Function クエリでは、その関数を使います SELECT Get_numeric([テーブル2]![d1]) AS 式1, テーブル2.d1 FROM テーブル2; テスト結果 式1 d1 558764 hut558764 41887 we41887

rinateku
質問者

お礼

随分時間が経ってしまいましたがその節は有り難うございました!

その他の回答 (3)

noname#79209
noname#79209
回答No.4

私の場合は以下のような正規表現DLLを使っています。 http://www.hi-ho.ne.jp/babaq/bregexp.html

rinateku
質問者

お礼

随分時間が経ってしまいましたがその節は有り難うございました!

  • kurodai2
  • ベストアンサー率38% (77/202)
回答No.3

見落としていました。 >また、式はどの部分に入れれば出来るのでしょうか? これは、クエリのデザインビューでのことでしょうか? であればと言うことで・・ 式は、フィールドのところに書きます。 列名:式 の形です。 該当するフィールドのところで、マウスの右クリックでビルド画面が表示されるので、選択しながらも登録可能です。 また、列名はアクセスが勝手に、式1とか名称は付加します。 1つ前の回答が そうなっています。 自分で、入力しなおせば 変更可能です。

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.1

     A        B 1   hut558764   558764 2   lwe41887    41887 B1=LOOKUP(10^10,RIGHT(A1,COLUMN(1:1))*1) ★下にコピー

rinateku
質問者

お礼

随分時間が経ってしまいましたがその節は有り難うございました!

rinateku
質問者

補足

回答有り難うございます。 これはエクセルですか? アクセスのクエリ部分に、B1という項目が無いのですが・・・。 あと、(例)はあくまでも(例)なので、英数とも どの字が出て来るかは不明です。 それともこの式をフィールドに入れたら良いのでしょうか?

関連するQ&A

  • Accessのクエリで

    商品コードというフィールドがあるのですが、 ローマ字2文字以上、数字4桁で構成されています。 (AA0000やAAA0000といった具合) これをクエリで商品コードA・商品コードBというフィールドに分けたいのですが、 前部分の文字数の違うローマ字の抜き出しってできますか? どなたか回答お願いします。

  • アクセスのクエリで

    アクセスのクエリで、テーブルAのフィールド1には数字、×、アルファベットの組み合わせの文字がありますが、この中からアルファベットを消去した表示にする事はできますか? 例えば、T24.70×17.5 ならば、 24.70×17.5にしたいです。 誰か教えて下さい。よろしくお願いします。

  • 【Accessクエリ】英字2桁+数字8桁+英字0桁

    Accessのクエリにおいてある項目の中身が英字2桁+数字8桁+英字2桁(計12桁)になっているものだけを抽出する方法を教えて頂けませんでしょうか。 宜しくお願い致します。

  • アクセスクエリで英数字のみ半角にすることは可能?

    アクセスクエリで英数字のみ半角にすることはできますか?カタカナは全角のままにしたいです。 「アアアAAA111」 のデータがあり、更新クエリで UPDATE テーブル1 SET [テーブル1].[フィールド1] = StrConv([テーブル1]![フィールド1],8); をすると 「アアアAAA111」 になってしまいます。 「アアアAAA111」 にするにはどうすればいいでしょう? カタカナ+英字+数字になってるわけではなくランダムです。

  • ACCESS2000 クエリの抽出条件について

    またまた、お世話になります。 クエリでの抽出を行う方法についてアドバイスをお願いします。 以下、状況を説明します。 抽出条件をつけようとしているフィールドはテキスト型で、通常は、"001""010""101"など3桁の数字が入ってます。稀に"011A"というふうに、数字3桁+アルファベット1文字が入ることもあります。(ちなみに入る数字は001~200までです。) このフィールドに対し、3桁の数字部分をそのまま数値と見なして、例えば"010以上"で抽出したいのです。 単に">=010"なんてやってもダメですよね。(←注:これはやってみた訳ではなく、私の想像です) どのようにすれば良いでしょうか。よろしくお願いいたします。

  • ACCESS2003クエリの結合した表示形式が

    ACCESS2003でクエリを作成しました。各テーブルのフィールドを結合したのですが 表示形式が思ったようになりませんでした。 【Aテーブル】 フィールド:学部NO データ型:数値型 書式:00 【Bテーブル】 フィールド:学科NO データ型:数値型 書式:00 【ABクエリ】 フィールド:学籍NO:[Aテーブル]![学部NO]&[Bテーブル]![学科NO] 【ABクエリ】の結果が数字が4桁表示されません。 (例) 0101 と表示してほしいのですが、   11  と表示されます。 各テーブルでは、01と表示されるのですが・・・。 宜しくお願いします。

  • エクセルの英数入り交じったデータに、ハイフンを入れるにはどのようにすれば良いでしょうか・・・

    はじめまして。 今、エクセルにてデータ整備をしています。 英数入り交じったデータにハイフンを入れるのですが、 数が多いため、できれば数式で処理したいと思っています。 単純に、全てのセルの同じ箇所(例えば4ケタ目の後、などに) ハイフンを入れるだけの数式なら問題ないのですが、 英数の文字数がデータによってマチマチです。 結果的には、全てのデータを「英字 -(ハイフン)数字」にしたいと思っています。 英語と数字を見分けて、かつ、ハイフンを間に入れるような数式はあるのでしょうか? 何か良い方法があれば、ぜひ教えていただだければと思います。 どうぞ宜しくお願いいたします。 例)ABCD1234 → ABCD-1234   AB12345 → AB-12345

  • Excel:文字と数字の間に数字を追加するマクロ。

    こんばんは、よろしくお願いします。 csvのデータで数字とかなが下記のようなデータがあります。 ※処理前 頭の数字以降は、文字と数字がランダムなデータ。全体の文字数もランダム 900000000000085600000008~0051038901フ(半角)~ 20000000000008560000008~0051038902サ~ ※処理後 900000000000085600000008~0000510389フ~ 20000000000008560000008~0000510389サ~ というようなデータの 半角カナの前の数字2ケタを削除し、10桁前に00を追加するようなマクロをExcelで作成したいのですが、 カナの前の数字の桁数が一定ではないこと、またカナの前の数字の桁数が多いため(40桁以上) のため指数表記になってしまう。 という、2点で困っています。 データ数が多くなることを考えると、前から1文字ずつ検索し、 判断していくのは、難しいかなと考えております。 Val関数で、取得しようとしたのですが、指数表記で上手く行きませんでした。 どのように、処理すればよろしいでしょうか。 お教え下さい。

  • アクセスのクエリで困ってます。

    閲覧ありがとうございます。 テーブルリンクしたデータからクエリーでデータ抽出を作成しているのですが、「メモ型」データの文字数が偶数のレコードは、読込出来るのですが、文字数が奇数のレコードが「#Error」表示になって正しく読込めません。 この場合の対応方法はありまか?宜しくお願いします。

  • Access2013 曜日 自動的表示のクエリ

    Access2013で、備忘録作成の為、[年月日] をテーブルに短いテキスト形式で、例20001205と初めの4桁を西暦、次の2桁を月、後の2桁を日で入力してあります。 この日の[曜日] を自動的に表示させるクエリのフィールドへの記入式を教えて下さい。宜しくお願いします。

専門家に質問してみよう