2009-04-16 9 views
7

Option Compare Textは、モジュールレベルで設定されている場合VB/VBA StrComp関数または、任意の違いは

If strVal1 = strVal2 Then 

を使用するのではなく、どちらかといえば、

If StrComp(strVal1, strVal2, vbTextCompare) = 0 Then 

を使用する利点は何があります= ?

私はStrCompがnullシナリオと<シナリオを処理することを知っていますが、strVal1とstrVal2のnull以外の有効な文字列が割り当てられている状況にのみ興味があります。

答えて

1

を比較するとOption Compare Textは、モジュールレベルで設定されている場合は、いずれかの違いがあります?

いいえ。モジュールレベルの戦略コミットメントはありません。ただし、の場合はとすれば、x = yオプションを選択してください。less codeは常に良いコードです。

+1

コードが少ない*常に*良いコードですか? [コードゴルフ](http://codegolf.stackexchange.com/) –

+0

@マークク「...他のすべてのものは同等です」もちろん。 –

+0

vbBinaryCompareを使用したStrCompは高速です。 'あなたができるときはいつでも、バイナリ比較を使います。これはVBのデフォルトです。テキストの比較はずっと遅いです。」http://www.aivosto.com/vbtips/stringopt.html – lpfx

2

StrComp関数は、(文化情報付き)の文字列を比較しているので、大文字と小文字は(そうこんにちはハローと同じです)...世話をしていません。 =の場合、異なるものがあります(バイナリの比較のように)。 オプションは、テキストがモジュールレベルであり、そこには違いはないでしょう(しかし、あなたが他の男はそれを削除する場合にはStrComp関数を使用する必要があります)...

関連する問題