アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんにちは。
いま、アクセスを使ってコード(英字)と数字のまざっているデータを
数字だけ取り出して、表示するのに困っています。

名前、住所、コードというデータの並びが有って、
この「コード」というのが、最初にアルファベットが
数文字(文字数はランダム)、その後に数字が数桁入った
データになります。
(例)hut558764、lwe41887

これをクエリの作業だけで、数字のみの表示にさせるには
どういう式をいれたら良いのでしょうか?
(例)558764、41887

また、式はどの部分に入れれば出来るのでしょうか?
宜しくお願い致します!

A 回答 (4件)

クエリだけでは、無理なので


数値だけを取り出す関数を、標準モジュールに作り
クエリの中から、その関数を使えば 可能です

標準モジュール *パブリックで
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;

テスト結果
式1d1
558764hut558764
41887we41887
    • good
    • 0
この回答へのお礼

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

お礼日時:2010/08/19 22:28

私の場合は以下のような正規表現DLLを使っています。


http://www.hi-ho.ne.jp/babaq/bregexp.html
    • good
    • 0
この回答へのお礼

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

お礼日時:2010/08/19 22:27

見落としていました。


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

     A        B


1   hut558764   558764
2   lwe41887    41887

B1=LOOKUP(10^10,RIGHT(A1,COLUMN(1:1))*1)
★下にコピー

この回答への補足

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

補足日時:2007/08/01 07:45
    • good
    • 0
この回答へのお礼

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

お礼日時:2010/08/19 22:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!