2009-05-01 14 views
5

strValue = 'Hello'の場合、(strValue <> 'HELLO')の値はどうなりますか?VB6の文字列比較は大文字と小文字を区別しませんか?

+1

は、それが簡単ではないでしょうか? –

+0

カール、私はそれを言っていた。ほとんどの人はVB6インタプリタを持っていませんが、OPは明らかにそうです。 :) –

+0

VBAは同じように動作しますが、ほとんどの人はそのことを持っています... –

答えて

12

Option Compareステートメントの使用方法によって異なります。いずれにしてもうまくいく。

Option Compare Text 'Case insensitive' 
Option Compare Binary 'Case sensitive (default)' 

ここにはVB6 string tutorialがあります。

11

いいえ、それは大文字と小文字を区別します(あなたがチェックしたいと思う少なくともかかわらず、デフォルトで - オプションの比較がバイナリに設定するか、設定されていない場合、それは大文字と小文字を区別のテキストに設定すると、それは、大文字と小文字を区別します)。

大文字と小文字を区別しない場合は、Lcase()の両側を使用してください。

私がこれを変更する/設定オプションを比較するのが好きな理由は、コードを見ている人がどのようなオプション比較がどのように動作するのかを確認するために狩りに行く必要はないが、あなたが繰り返し呼び出すのでなければそれほど重要ではありません)。

+1

またはUCaseが同じことをするでしょう。 –

+6

またはStrComp関数(strVal1、strVal2、vbTextCompare) – Tomalak

+0

コードを読んで、誰かが変更され、何かを見つける私は比較ではなく、使用オプションよりも、これを行う理由は、私が比較して、それを明示的ではなく、持っていることを好むということであると言って価値があるかもしれません使用しますデフォルトの動作。 –

1

documentationあなたは モジュール[ファイルの先頭]の宣言セクションでOption Compare Textを使用する場合は、文字列の比較では、大文字と小文字は区別されません

かなり明確です。
Option Compare Binaryを使用する場合、比較では大文字と小文字が区別されます。
あなたがOption Compare Database [アクセスVBAでのみ有効]を使用する場合は、比較方法は、現在のデータベースで設定されています。このため非常に簡単なテストを書くために - と、より特定 -

+0

こんにちは誰でもこれを落とした。コメントを残すために気をつけますか? – MarkJ

関連する問題