2017-11-22 8 views
-1

私はすべての条件を変数(a)に割り当て、条件に同じ変数を使用しましたが、動作していません。それが働いている状態。変数を使用して条件が働いていない場合

a = "Trim(Mid(""" & sNextLine & """," & UserForm1.TextBox5.Text & "," & UserForm1.TextBox6.Text & ")) " & con & " " & """" & UserForm1.TextBox8.Text & """" 
If a Then 
    a = b 
end if 
where sNextLine ="061001 00100 0002017001 001.00 00004001 61A00  000000000", UserForm1.TextBox5.Text=1, UserForm1.TextBox6.Text=3,con ="=", UserForm1.TextBox8.Text="061" 

私にこれを助けてください。質問やコードに問題がある場合は無視してください。私はここで新しいです。

+2

文字列はブール値ではありません。 (VBAコードはコンパイルされ、実行されます。実行時に文字列変数に "コードを書き込む"ことはできず、コードの代わりにその文字列変数を使用するだけです) – YowE3K

+0

これは他の方法で使用できますか? @ YowE3K – qwe

+1

あなたの文字列からVBAコードを作成し、そのコードをモジュールに入れてから、それを呼び出すコードを書くことができます。 (私は思う!)VBAに精通していない人には絶対に勧められません**。 (私は絶望的でなければ私はそれを試していないだろうし、それで遊んで余裕を持って多くの時間を持っていた) – YowE3K

答えて

1

これはうまくいくはずです。

A = Application.WorksheetFunction.Trim(ミッド(sNextLine、TextBox5.value、 TextBox6.value))

= TextBox8場合

= B

END IF

関連する問題