• 締切済み

VBA Chr(10) Chr(13)

アクセスのテーブルの値をvbaで操作してるのですが Chr(10) + Chr(13) と Chr(10) & Chr(13) は、同じ意味と認識していいのでしょうか? これを実行して置換等をした場合、改行される時とされない時があり不思議に感じています。 フォームに紐づいたレコードソースをテキストボックスに表示させていて、改行させて表示させたい場合があります。

みんなの回答

  • m3_maki
  • ベストアンサー率64% (296/460)
回答No.4

> Chr(10) + Chr(13) > > と > > Chr(10) & Chr(13) > は、同じ意味と認識していいのでしょうか? Excel VBA 程度であれば、 http://msdn.microsoft.com/ja-jp/library/te2585xw.aspx こちらの説明で、下記の記述で十分でしょう。 文字列の連結には & 演算子を使用することをお勧めします。この演算子は文字列だけに定義されているので、意図しない変換が発生する可能性を減らすことができます。 ただし > アクセスのテーブルの値をvbaで操作してるのですが ということですので Null値 の理解は不可欠です。 連結する内容に Null値 が含まれると、「&」と「+」 で結果が異なってきます。 詳細はこちらで。 式を使用して文字列値を結合する http://office.microsoft.com/ja-jp/access-help/HA010235851.aspx もちろん、Chr(10) と Chr(13) の結合では どちらも同じ結果になります。 あと、一番大事なこと、アップ時の記述ミスでなければ Access の改行コードは Chr(10) + Chr(13) ではなく Chr(13) + Chr(10) です。 ついでに、 SQL の文字列などでは、 vbNewLine 等の vb の 定数はエラーになります。

回答No.3

>Chr(10) + Chr(13) >と >Chr(10) & Chr(13) >は、同じ意味と認識していいのでしょうか? 左右のオペランドが「文字列」の場合は、どちらも同じ意味になりますが、マイクロソフトは文字列同士の連結は&を使う事を推奨しているので、&を使った方が良いです。

  • kkkkkm
  • ベストアンサー率66% (1742/2617)
回答No.2

VBAは同じ意味として結合してくれますが、基本的には文字列の結合は & で行う方が無難です。 また、VBAの場合でしたらChr(10) & Chr(13)ではなく、vbCrLfやvbNewLineの方が入力しやすいこともあり使います。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

>Chr(10) & Chr(13) は、同じ意味と認識していいのでしょうか? 明確には違います。 Chr(10) = vbLf = ラインフィード(改行) Chr(13) = vbCr = キャリッジリターン(復帰) 詳細は下記Wiki参照 http://ja.wikipedia.org/wiki/%E6%94%B9%E8%A1%8C%E3%82%B3%E3%83%BC%E3%83%89

関連するQ&A