• ベストアンサー

整数→文字列の置換

VB6の質問です。 ↓例で、REC変数を文字列の扱い(整数→文字列)にする方法はございますか? 宣言時の変数タイプは、変更したくありません。 宜しくお願いいたします。 Dim REC As Integer Private Sub test() As Integer  ・  ・  ・  ・ REC = '←処理結果をRECに入れる。RECには、文字列が挿入されます。 End Sub

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

  • ベストアンサー
回答No.1

数値を文字列に変換するのはStr()関数を使う。 >↓例で、REC変数を文字列の扱い(整数→文字列)にする方法はございますか? Integerと宣言した変数に文字列を入れようとしたらエラーになるので、その方法は無い。 >宣言時の変数タイプは、変更したくありません。 その条件を満たしたままREC変数を文字列の扱いにするのは不可能。 なので「REC変数を参照している部分すべて」で「RECと記述しているのをStr(REC)に直す」しか方法がない。 もし、100箇所で参照しているなら、100箇所全部を「Str(REC)」に書き換えないといけない。 以下のようにします。 ---- Dim REC As Integer Private Sub test() As Integer  ・  ・  ・  ・ REC = 10 '←処理結果をRECに入れる。RECには文字列は絶対に入れられないので、諦めて数値を入れる。 End Sub  ・  ・ (略)  ・  ・ '実際にRECを参照している部分 MsgBox "RECの値は" & Str(REC) & "です。"  ・  ・ (略)  ・  ・ Dim 個数 as String '実際にRECを参照している部分 個数 = Str(REC) & "個" ----

noname#187796
質問者

お礼

ありがとうございました。 2回目の質問は無視してください。

noname#187796
質問者

補足

ありがとうございました。 サンプルコートの内容についての質問です。 REC = 10 '←処理結果をRECに入れる。RECには文字列は絶対に入れられないので、諦めて数値を入れる。 >処理結果は、ランダムにA01, A02, A03の文字列が入ります。 このままでは無視されるのですね? このケースでは、どのような数値を設定するば良いですか?

その他の回答 (1)

回答No.2

因みに、Str()関数は ・数値が0か正の数だと、先頭に半角スペースが付く ・数値が負の数だと、先頭に半角スペースが付かない代わりに符号のマイナスが付く と言う特徴があるので注意。 例えば 147⇒半角スペース+"147" -147⇒"-147" となり、どちらも4文字になる。

関連するQ&A