|
▼ichinose さん:
ichinose さん、こんばんは。ご回答ありがとうございます。
早速、頂戴したサンプルコードを実行しました。
理解することが出来ました。とても解り易くしてくださり、ありがとうございました。
textプロパティでそもそもstring型というのが、いままで全く解っていなく
とても勉強になりました。活用させて頂きます。感謝いたします。
▼かみちゃん さん:
ご無礼な質問にお付き合いくださりありがとうございました。
お礼申し上げます。
>nobuyuki さん
>かみちゃん さん
>こんばんは。
>
>>なお、大変ずうずうしく追加質問したいのですが、お答えいただけませんでしょうか?
>>
>>以前にワークシート上の例えば A1セルにIsEmpty関数を
>>使って実現できたので、全く同様にUserForm1でも可能と考え試しました。
>>そもそもUserForm1ではIsEmpty関数は使用不可なのでしょうか?
>
>Emptyとは、Variant型の変数でまだどの型にも属していない状態です。
>例えば、以下のコードを実行してみて下さい。
>'================================================
>Sub test()
> Dim string_data As String
> Dim long_data As Long
> Dim variant_data As Variant
> MsgBox "string_data: " & string_data & "---" & IsEmpty(string_data)
> MsgBox "long_data: " & long_data & "---" & IsEmpty(long_data)
> MsgBox "variant_data: " & variant_data & "---" & IsEmpty(variant_data)
> 'IsemptyがTrueを返すのは↑のみです。
> string_data = ""
> long_data = 0
> variant_data = ""
> MsgBox "string_data: " & string_data & "---" & IsEmpty(string_data)
> MsgBox "long_data: " & long_data & "---" & IsEmpty(long_data)
> MsgBox "variant_data: " & variant_data & "---" & IsEmpty(variant_data)
> string_data = "aa"
> long_data = 12
> variant_data = "aa"
> MsgBox "string_data: " & string_data & "---" & IsEmpty(string_data)
> MsgBox "long_data: " & long_data & "---" & IsEmpty(long_data)
> MsgBox "variant_data: " & variant_data & "---" & IsEmpty(variant_data)
>end sub
>
>これを踏まえ、
>UserformのTextboxのTextプロパティを考えると
>これそもそもString型ですのでIsEmptyでTrueは返りません。
>
>又、仮にTextプロパティがVariant型だとしても
>Textbox内での内部コードで
>
>Text=""
>
>というコードが実行されていれば
>
>もはやEmptyではありません
>(理由は、上記のコードの実行でお分かりだと思います)。
>
>よって、この場合は、かみちゃん さん
>記述されているように
>
>If TextBox1.Text <> "" Then
>
>という判断が間違いのない方法だと思います。
|
|