2012-04-15 33 views
5
If TextBox1.Text = "" Or TextBox1.Text = "False" Then 
     msgbox("Filename invalid. Try again.",vbOKOnly) 

Tôi nhận được thông báo lỗi "Trình biên dịch lỗi: Dự kiến: =".Có gì sai với đoạn mã VBA này?

+0

Tôi chưa bao giờ sử dụng VBA, nhưng tôi đoán bạn muốn '=='. – jordanm

+0

@jordanm: Không. Visual Basic là sane và toán tử so sánh chính xác là '=';) – Ryan

+0

@jordanm: Khá chắc chắn nó là '='. '==' được sử dụng trong ngôn ngữ biến thể C++ nếu tôi nhớ chính xác. – stanigator

Trả lời

11

Đó là vì bạn chỉ có thể gọi Sub s hoặc với Call hoặc không có dấu ngoặc đơn trong VBA. Vì vậy, thay đổi nó để:

MsgBox "Filename invalid. Try again.", vbOKOnly 

Hoặc, nếu bạn thích phong cách này tốt hơn:

Call MsgBox("Filename invalid. Try again.", vbOKOnly) 

(Và lý do bạn nhận được lỗi là bởi vì nó hy vọng bạn gán kết quả cho một biến, do đó nó mong đợi một =.)

Các vấn đề liên quan