次の方法で共有


入力関数と InputB 関数 (文字列関数操作の違い)

適用先: Access 2013 | Access 2016

テキストのメモリ ストレージ形式は、Visual Basic for Applications (VBA) コードと Access Basic コードによって異なります。 (Access Basic は、以前のバージョンの Microsoft Access で使用されていました)。テキストは、Access Basic コード内の ANSI 形式と Visual Basic の Unicode 形式で格納されます。 このトピックでは、現在のバージョンの Microsoft Access で文字列を処理するときの潜在的な問題の 1 つについて説明します。

詳細については、「 文字列関数操作の相違点」を参照してください。

Microsoft Access の Input 関数は、文字をファイルから読み出すときに指定した文字数を Unicode の文字列に変換して変数に読み込みます。 一方、InputB 関数は、データをバイナリ データであると仮定して Unicode には変換せずにそのまま変数に格納します。 次のように固定長のフィールドで格納されているファイルを読むときに InputB 関数を使う場合は、固定バイト長のデータを読み込んでから Unicode に変換する必要があります。

Open "Data.Dat" For Input As 1 
dat1 = StrConv(InputB(10, 1), vbUnicode) 
dat2 = StrConv(InputB(10, 1), vbUnicode) 
dat3 = StrConv(InputB(10, 1), vbUnicode) 
 
===DATA.DAT 
123456789012345678901234567 
Name Address Telephone

関連項目

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。