|
▼初心者さっち さん:
>さっそくですが、ご教示ください。
>
>Sub test()
> Dim rs As Integer
> For rs = 1 To 5
> Debug.Print ("rs=(" & rs & ")")
> Next rs
>End Sub
>上記の、("rs=(" & rs & ")")がわかりません。
>なぜアンパサンドが入るのでしょうか。
本来文字列出力ですから
Debug.Print ("rs=(" & cstr(rs) & ")")
とすべきですが、VBの便利な機能である「暗黙の型変換」が行われているからです。
便利な仕様ですが、時に大きなお世話もしてくれます。
文字列の結合には「&」を使用します。
>("rs=(rs)")では、たしかに( 1 )←なります。1の前後にスペースが入って
>しまいます。きれいに表示させるには、上記のように記述するのは理解できる
>のですが、なぜ上記のように記述するとそうなるのかをご教示できればと思います。
理解が間違っています。
>>("rs=(rs)")では、たしかに( 1 )←なります。
ですが、本当になりますか?VBの文法から言うと
>Debug.Print ("rs=(rs)")では、
rs=(rs)
と出力されるはずです。
|
|