2017-03-24 14 views
0

範囲値にIsletterを使用する方法について質問したいと思います。範囲に文字が含まれているかどうかを確認する方法

私のコードは、以下を参照してください。

If Range("$E$52").Value = **"Isletter"** Then 

    Worksheets("Offloading_Tributary").Shapes("Object 115").Visible = False 

     Else 

    Worksheets("Offloading_Tributary").Shapes("Object 115").Visible = True 

End If 

は、事前にありがとうございます。セルの内容は、文字が含まれている場合

よろしく、

+0

コードタグを追加できますか?あなたは、そのセルが単一の文字で構成されているか、文字を含んでいるかチェックしていますか? – SJR

答えて

2

を検出するには、使用できます。

If Range("$E$52").Value Like "[a-zA-Z]" Then 
    Worksheets("Offloading_Tributary").Shapes("Object 115").Visible = False 
Else 
    Worksheets("Offloading_Tributary").Shapes("Object 115").Visible = True 
End If 
:セルの内容を1文字だけで構成されている場合は

If Range("$E$52").Value Like "*[a-zA-Z]*" Then 
    Worksheets("Offloading_Tributary").Shapes("Object 115").Visible = False 
Else 
    Worksheets("Offloading_Tributary").Shapes("Object 115").Visible = True 
End If 

を検出するには

セルの内容が数値のみで構成されているかどうかを検出するには(空ではなく、0とみなされ、したがって数値と見なされます):

If IsNumeric(Range("$E$52").Value) And Range("$E$52").Value <> "" Then 
    Worksheets("Offloading_Tributary").Shapes("Object 115").Visible = False 
Else 
    Worksheets("Offloading_Tributary").Shapes("Object 115").Visible = True 
End If 
+0

こんにちはCLRは、範囲に数値と文字のいずれかの値があるかどうかを調べるようなものです。例:範囲が数値の場合はマクロがトリガーされ、値が文字の場合は同じです。 IsLetterのようなもの。また、範囲が数値でも文字でもない場合はチェックしたいと思います。 – Tramyer

+0

文字列比較関数です。 'Like '* [a-zA-Z] *" 'を使うと、少なくとも* 1つのアルファベット文字を含む文字列を見ることができれば' TRUE'を返します。したがって、単語 "one"は "True"を返しますが、 "1"は返しません。 – CLR

+0

'Like '[a-zA-Z]' 'を使うと、長さが1の文字列を見ることができ、1文字のアルファベット文字を含む文字列を見ると' TRUE'を返します。したがって、単語 "one"はFalseを返し、1はFalseを返しますが、YはTrueを返します。 – CLR

関連する問題