2011-01-13 5 views
2

私が使っているほとんどのプログラミング言語では、(sは文字列)のようなことができます。変数を更新する際の構文的砂糖文字列連結

s = "Hello" 
s += " World" 

私はVBAでも同様のことをしようとしていますが、動作しません。私は私がs &

+0

を使用してより良いではありません。 – RolandTumble

答えて

5

Microsoft AccessはVB.NETを使用していないと&=連結演算子があるなしにこれを行うことができ、私は

s = "Hello" 
s = s & " World" 

を行っているエンドでは

s = "Hello" 
s += " World" 
s &= " World" 

を試してみましたVB.NET固有。

でも、VBAはVB6.5(古い学校のPコード|ネイティブ/ COM VB)であり、VB.NETを使用するようにアップグレードされていません。

4

VBAが2つあり、&+です。

しかし、それは=+または=&のショートカットを持っていない - あなたは完全な構文を記述する必要があります。

s = s & " World" 

それとも

s = s + " World" 

+は警告が付属していますが(それ以降加算演算子としても使用されます)。

+演算子を使用して2つの文字列を連結する場合は、連結のために&演算子を使用してあいまいさを解消し、自己文書化コードを提供する必要があります。

+1

+1文字列連結で '+'演算子を使うことに注意していただきありがとうございます。あまりにも多くの人々がVBプログラマに助言を与え、この重要な詳細を忘れてしまいます。 *理由*これは、VBでは 'Variant'型を通して極端にタイピングが可能であり、2つの' Variants'を一緒に追加すると結果に驚くことがあります。 –

+0

ミックスにヌルが含まれている場合はもちろんです。 – Fionnuala

1

はい、それはちょうどあなたが(限りアクセスが懸念している...)一つの真の方法を発見したアンパサンド

s = "Hello" 
s = Join(Array(s, "World"))