回覆列表
-
1 # lanfengz1
-
2 # lanfengz1
無效外部過程的原因和解決如下:
1,區域性變數不能直接放在通用程式碼裡面,要放在過程裡面。
比如
Dim a As Integer
Private Sub Command1_Click()
a = 4
b = 6
End sub
一般的語句如 a=4 寫在 Private Sub 裡面,才可用;
如果把位置調換下:
Dim a As Integer
a = 4
private Sub Command1_Click()
a = 4
b = 6
End Sub
上面的a=4是無效的外部過程
若在調換位置:
a = 4
private Sub Command1_Click()
b = 6
End Sub
變數移動到程式碼視窗的最上方,為定義全域性變數。
若再稍加改動:
option explicit
Dim a As Integer
Private Sub Command1_Click()
a = 4
b = 6
End sub
是窗體或模組級變數
2、呼叫的SUB沒有定義,且不是VB自帶的
可能是你呼叫了一個未新增的函式或子過程。
3、變數不能在通用區域賦值,必須新增一個過程,定義也必須按規則,否則為變體(Variant)而非你所定義的變數。
無效外部過程的原因和解決如下:
1,區域性變數不能直接放在通用程式碼裡面,要放在過程裡面。
比如
Dim a As Integer
Private Sub Command1_Click()
a = 4
b = 6
End sub
一般的語句如 a=4 寫在 Private Sub 裡面,才可用;
如果把位置調換下:
Dim a As Integer
a = 4
private Sub Command1_Click()
a = 4
b = 6
End Sub
上面的a=4是無效的外部過程
若在調換位置:
a = 4
private Sub Command1_Click()
b = 6
End Sub
變數移動到程式碼視窗的最上方,為定義全域性變數。
若再稍加改動:
option explicit
Dim a As Integer
Private Sub Command1_Click()
a = 4
b = 6
End sub
是窗體或模組級變數
2、呼叫的SUB沒有定義,且不是VB自帶的
可能是你呼叫了一個未新增的函式或子過程。
3、變數不能在通用區域賦值,必須新增一個過程,定義也必須按規則,否則為變體(Variant)而非你所定義的變數。