• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Accessでの文字列抽出)

Accessでの文字列抽出

このQ&Aのポイント
  • Accessで文字列抽出を行いたいが、小文字と大文字を区別できないため困っている。
  • フィールドには文字と数値が並んでおり、文字のみを抽出したい。
  • 文字(テキスト)の後には数値が付いている場合もあり、カタカナで終わるものもある。

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

  • ベストアンサー
  • IDii24
  • ベストアンサー率24% (1597/6506)
回答No.2

パブリックモジュールを作成してくださいAccessVBAの関数を作らないと無理です。 その辺はプログラミングですので、まったく初めてでしたらこのスペースでは無理です。 Webで少し基礎を勉強してみてください。 文字列の操作、数値の扱いです。 とりあえずサンプルですが、エラー回避とかnull回避はしてません。 test1をクエリから予備フィールドをパラメータで渡せば可能です。 Public Function test1(A As String) Dim i As Integer Dim B As String B = "" For i = 0 To Len(A) If IsNumeric(Mid(A, i + 1, 1)) = False Then B = B & Mid(A, i + 1, 1) End If Next test1 = B End Function

numa-numa
質問者

お礼

モジュールの作成ですか、、、 そうですね、基礎の勉強が必要なようです。 今回は地道に変換する道を選びます。 上記例文&回答については、今後の参考にさせていただきます。 ありがとうございました。

その他の回答 (1)

  • IDii24
  • ベストアンサー率24% (1597/6506)
回答No.1

出来ますよ。 for ~loopで文字数分回す。 mid関数で左から1文字ずつ読む、開始値は回した階数の変数。 isnumeric関数でその1文字を検査しfalseだったら文字変数に追加で入れる。 一列終わったら書き出し。文字変数をクリア。 という関数を作り入口の引数で1行渡せばよい。 クエリでも使用できる。 nullの扱いに注意。nullなら抜けるとか。

numa-numa
質問者

補足

お早い回答で助かります。 ありがたいです。 なのですが、回答にある関数はSQL文で書くことになるのでしょうか? 今のところ式が頭に思い浮かばないので、まだ調べる必要がありそうです。 よろしければ、例文を教えていただけないでしょうか。

関連するQ&A

専門家に質問してみよう