ACCESS StrConv関数で半角と全角を変換する方法

StrConv関数で半角と全角を変換する方法

ACCESSでテキストデータの半角と全角が混在して困った経験はないでしょうか。

テーブルのレコードに入力される値はある程度制御可能ですが、一番困るのは外部からインポートするデータで半角と全角が混在しているときかと思います。

今回は、StrConv関数を使って半角と全角を変換する方法をご紹介します。


こんにちは。
はこにわガジェット (@hakoniwagadget) です。

ACCESSを使った売上管理、顧客管理などのデータベース開発を行っています。
ACCESSは使いこなすために少しスキルが必要なものの、うまく活用すればExcelよりも業務の効率化が図れます。
この記事ではACCESSをもっと使いこなしたい方向けにACCESSの関数をご紹介していきます。

StrConv関数の構文

StrConv関数は文字列を変換するための関数です。

以下の構文で利用します。

StrConv ( 文字列 , 変換方法 )

2つ目の引数の変換方法は数値で指定でき、それぞれ以下の意味を持っています。

数値変換内容変換後
1大文字に変換aA bB cCAA BB CC
2小文字に変換aA bB cCaa bb cc
3単語の先頭文字のみを大文字、その他を小文字に変換aA bB cCAa Bb Cc
4半角を全角に変換aA bB cCaA bB cC
8全角を半角変換aA bB cCaA bB cC
16平仮名をカタカナに変換てすとテストテストテスト
32カタカナを平仮名に変換てすとテストてすとてすと

StrConv関数の使用例

それではいくつか、StrConv関数の使用例を見ていきましょう。

サンプルデータ

今回は、サンプルデータとして以下のテーブルを準備しました。

単純にテキストだけが格納されたテーブルです。

このテーブルの「元の文字列」フィールドに入力されたテキストデータをStrConv関数で変換していきます。

クエリでの使用例

最初にクエリでの使用例です。

クエリでは、デザインビューでこの関数を利用します。

クエリをデザインビューで新規作成しましょう。

テーブルのデザインビュー

クエリのデザインビューで上段部分(フィールドリスト)にサンプルテーブルをドラッグアンドドロップします。

そして、フィールドリストにおいたテーブルのフィールドから「元の文字列」フィールドを下段のデザイングリッドへドラッグアンドドロップします。

この「元の文字列」に対して、StrConv関数で変換した値を表示するフィールド(列)を追加していきます。

例えば全角を半角へ変換する場合は、フィールド欄に


 全角を半角へ変換: StrConv([元の文字列],8)

と記載します。

「:」より左側はフィールド名ですので自由に命名することが可能です。

「:」より右側は今回ご紹介したStrConv関数ですね。

クエリで使用する場合は、変換対象の文字列をしているする際に、フィールド名を[]で囲うのを忘れないようにしましょう。

データシートビューで結果を見ると下記のようになります。

右側の列に全角を半角に変換した結果が表示されていますね。

このように、クエリでは新規フィールドでStrConv関数を利用します。

VBAでの利用方法

VBAで使用する際の例も記載します。

以下のプロシージャでは、test_strconvテーブルのID:1レコードの「元の文字列」を全角から半角へ変換しています。


 Public Sub strconv_test()

 Dim test_str As String

 test_str = StrConv(DLookup("元の文字列", "test_strconv", "ID = " & 1), 8)

 MsgBox test_str

 End Sub

「test_str」という文字列型の変数を作成し、その変数に、Dlookupで求めたテーブルの値を、StrConv関数で全角から半角へ変換して格納しています。

最後にメッセージボックスで変数の値を表示させています。

上記のプロシージャを実行すると

このように表示されます。

以上、StrConv関数で半角と全角を変換する方法をご紹介しました。


ACCESSを使いこなせば、業務の効率化や自動化が実現できます。
しかし、自分でACCESSを学ぶには時間がない、難しそうで不安、という方も多いでしょう。

そんな時は、ACCESS開発歴20年以上、過去に100以上のACCESSデータベースを開発してきた私(@hakoniwagadget)にお任せください。

ACCESSの新規開発、既存のACCESSの修正、ACCESSの操作レッスンなど様々なサービスをご提供しています。
ご興味のある方は下記のサービス一覧をご覧ください。

サービス一覧

最後までお読みいただき、ありがとうございました。