Excel VBA シンプル解説

Excel VBA シンプル解説

VBA勉強中です。

Amebaでブログを始めよう!

vbCrLf Cr はキャリッジリターン(カーソルを先頭に) 、Lfは ラインフィード(次の行へ)です。

状況によっては vbcr のみ vblf のみでも改行できますが

どの場面でも対応できるように

vbCrLf を使用する事が一般的となっています。

 

windowsのいろいろな場面で  Cr は改行として認識されます。

 

そこで繰り返すをしたい時は

 

string(3,vbcr)

 

これで3回繰り返しです、もちろん3を6に変えれば6回改行です。

vbcrだと改行にならない時、セルに値を入れる時等は

 

string(3,vblf) 

 

を使用します、なぜ

 

string(3,vbcrlf)

 

と書かないかというとstringは最初の一文字しか繰り返しません

 

文字で表現すると

 

String(5,"ウニペグ") だと 

ウウウウウ と、なるのです!

 

なぜ一文字の繰り返しでvbcrかと言うと

vbcrlfの実体は数字です 組み込み定数というやつです。

 

 vbCrLf = Chr(13) + Chr(10)

 vbCr = Chr(13) 

 

となります13を繰り返してるのです。

 

なので1文字しか繰り返さないstringだと引数にvbcr、もしくはvblf

となるのですが、

 

string(3,vbcrlf)

 

こう書いてもコンパイルエラーにはならずvbcrが繰り返します。

なので状況によって(MsgBOXへの表示等)では正常に機能しますが

セルに値を代入する場合には反応しません。

 

用途によって string(3,vbcr) string(3,vblf) を使い分けてください。

 

ちなみに

 

MsgBox "a" & Chr(13) & "w"

 

これも改行されます。

 

まだまだ補足したいですが次の機会に・・・・