Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

指定した文字列を変換して、バリアント型 (内部処理形式 StringVariant) で返します。

構文

StrConv ( string, conversion [, LCID ] )

StrConv 関数の構文には、次の引数があります。

引数

説明

string

必須。 変換される文字列式を指定します。

conversion

必須。 整数データ型の値を指定します。 実行する変換のタイプを指定する列挙型の値です。

LCID

省略可能です。 システム LocaleID と異なる場合は、LocaleID。 (既定値はシステム LocaleID)

設定値

引数 conversion引数 の設定値は次のとおりです。

定数

説明

vbUpperCase

1

文字列を大文字に変換します。

vbLowerCase

2

文字列を小文字に変換します。

vbProperCase

3

文字列内の各単語の先頭の文字を大文字に変換します。

vbWide *

4*

文字列内の半角文字 (1 バイト) を全角文字 (2 バイト) に変換します。

vbNarrow *

8*

文字列内の全角文字 (2 バイト) を半角文字 (1 バイト) に変換します。

vbKatakana **

16**

文字列内のひらがなをカタカナに変換します。

vbHiragana **

32**

文字列内のカタカナをひらがなに変換します。

vbUnicode

64

システムの既定のコード ページを使用して、文字列を Unicode に変換します。 (Macintosh では使用できません。

vbFromUnicode

128

文字列を Unicode からシステムの既定のコード ページに変換します。 (Macintosh では使用できません。

* 東アジア ロケールに適用されます。

** 日本にのみ適用されます。

注: これらの定数は、Visual Basic for Applications (VBA) によって指定されます。 その結果、実際の値の代わりにコード内の任意の場所で使用できます。 vbUpperCase + vbWide など、相互に排他的な場合を除き、ほとんどの値を組み合わせることができます (たとえば、vbUnicode + vbFromUnicode)。 定数 vbWidevbNarrowvbKatakanavbHiragana は、適用されないロケールで使用すると実行時エラーを引き起こします。

大文字と小文字の区別を適切に行うため、文字列内の単語を区切る有効な記号として、Null (Chr$(0))、水平タブ (Chr$(9))、ライン フィード (Chr$(10))、垂直タブ (Chr$(11))、フォーム フィード (Chr$(12))、キャリッジ リターン (Chr$(13))、スペース (1 バイト文字セット) (Chr$(32)) があります。 DBCS の場合、スペースの実際の値は国や地域により異なります。

解説

ANSI 形式のバイト配列から文字列に変換する場合は、StrConv 関数を使用する必要があります。 Unicode 形式のバイト配列から変換を行う場合は、代入ステートメントを使用します。

クエリの例

結果

SELECT strConv(ProductDesc,1) AS Expr1 FROM ProductSales;

"ProductDesc" フィールドの値を大文字に変換し、列 Expr1 に表示します

SELECT strConv(ProductDesc,2) AS 小文字 ID FROM ProductSales;

"ProductDesc" フィールドの値を小文字に変換し、列小文字 ID で表示します。 すべての単語の最初の文字を "ProductDesc" から大文字に変換し、列 PropercaseID に表示します。 その他の文字はすべて小文字のままです。

VBA の例

注: 次の例は、Visual Basic for Applications (VBA) モジュールでのこの関数の使用方法を示しています。 VBA の使用方法の詳細については、[検索] の横にあるドロップダウン リストで [開発者用リファレンス] を選び、検索ボックスに検索する用語を入力します。

この例では、StrConv 関数を使用して Unicode 文字列を ANSI 文字列に変換します。

Dim i As LongDim x() As Bytex = StrConv("ABCDEFG", vbFromUnicode) ' Convert string.For i = 0 To UBound(x)    Debug.Print x(i)Next

文字列関数とその使い方

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。