ACCESS CStr関数で値を文字列に変換する方法

CStr関数で値を文字列に変換する方法

ACCESSではデータ型が非常に重要です。
同じ見た目でも、それが数値なのか文字列なのかによって処理できる範囲に違いがあります。

そのため、必要に応じてデータ型の変換が行われます。

今回はその中でもよく利用される、CStr関数で値を文字列に変換する方法をご紹介します。


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

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

CStr関数の構文

CStr関数は、引数に指定した値を文字列に変換する関数です。
以下の構文で利用します。

以下にいくつか変換例を示します。

結果
CStr(10000)10000
CStr(-200)-200
CStr(6.4)6.4
CStr(#2024/12/7#)2024/12/7

一見、上記の見た目だけでは違いが分かりにくいのですが、数値や日付の値を入れると、それを文字列として返してくれます。

クエリでの利用例

では、実際にクエリでCStr関数を使ってみましょう。
デザインビューでクエリを作成します。

今回は、test_変換前というテーブルの「数値」というフィールドの値をCStr関数を使って文字列に変換します。
クエリで新たなフィールドを作成し、以下のように入力しました。

引数に数値フィールドを指定しています。
クエリの場合は、フィールド名を[]で囲う必要があることに注意してください。

データシートビューで結果を表示したのが以下です。

ぱっと見ではわかりにくいですが、CStr関数によって数値が文字列に変換されています。

VBAでの利用例

次に、VBAでの利用例をご紹介します。
今回は以下のフォームを作成しました。

数値を入力して変換ボタンを押すと、メッセージボックスで文字列に変換した値が表示されます。

この機能をどのように作成しているか見てみましょう。
フォームをデザインビューで開きます。

変換ボタンのクリック時イベントにイベントプロシージャを設定しています。
イベントプロシージャの内容は以下の通りです。

CStr関数を使って、フォームの数値テキストボックス(上記ではMe!数値で指定)を文字列に変換して、メッセージボックス関数で表示しています。

Str関数とCStr関数の違い

CStr関数と似た関数に、Str関数があります。
どちらも、値を文字列に変換する関数ですが、全般的にはCStr関数の方が使いやすいでしょう。

大きな違いは、元の値が正の数だった場合に、CStr関数で変換すると半角スペースが入らないのに対して、Str関数で変換すると半角スペースが入ってしまうことです。

実際に、同じ値をCStr関数とStr関数で文字列に変換した結果がこちらです。

Str関数の方は正の数の場合に半角スペースが最初に入ってしまっているのがわかります。
これは意外と使いにくいので注意しましょう。

以上、CStr関数で値を文字列に変換する方法をご紹介しました。


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

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

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

サービス紹介

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