PASSANDO OBJETO COMO PARAMETRO.
Criei um objeto para manipular arquivos e preciso passalo como parametro para outra rotina (uma que monta as combo). Tentei.
Dim oj_fornecedor as obj_fornecedor
combo = MONTA_CMB_2(ob_fornecedor,.......
============== Na rotina de montar combo, que recebe o objeto
Function monta_cmb_2 (ByRef obj_aux As Object, combo As ComboBox, mostra As String, codigo As String, CONFIG As Integer) As ComboBox
eof_aux = obj_aux.LE("*")
^
Nesta linha recebo um erro de OBJECT VARIABLE OR WITH BLOCK VARIABLE NOT SET mais existe o evento LE no OBJ_fornecedor
O que pode ser.
RochÂê
Dim oj_fornecedor as obj_fornecedor
combo = MONTA_CMB_2(ob_fornecedor,.......
============== Na rotina de montar combo, que recebe o objeto
Function monta_cmb_2 (ByRef obj_aux As Object, combo As ComboBox, mostra As String, codigo As String, CONFIG As Integer) As ComboBox
eof_aux = obj_aux.LE("*")
^
Nesta linha recebo um erro de OBJECT VARIABLE OR WITH BLOCK VARIABLE NOT SET mais existe o evento LE no OBJ_fornecedor
O que pode ser.
RochÂê
Bem mesmo vc passando ela por referencia não adianta., neste caso vc tem que criar uma variavel temporaria dentro da função e usar o set com a variavel do parametro da função
Ex:
Function monta_cmb_2 (ByRef obj_aux As Object, combo As ComboBox, mostra As String, codigo As String, CONFIG As Integer) As ComboBox
Dim TemObj as Object
Set TempObj = obj_aux
e para o retorno da função a mesma coisa
Set Monta_cmb_2 = TempObj
end function
Na chamada não precisa usar o set da combo do form para a função.Pois as modificações já serão feitas na combo que passou como referencia automaticamente.
Ex:
Function monta_cmb_2 (ByRef obj_aux As Object, combo As ComboBox, mostra As String, codigo As String, CONFIG As Integer) As ComboBox
Dim TemObj as Object
Set TempObj = obj_aux
e para o retorno da função a mesma coisa
Set Monta_cmb_2 = TempObj
end function
Na chamada não precisa usar o set da combo do form para a função.Pois as modificações já serão feitas na combo que passou como referencia automaticamente.
Tópico encerrado , respostas não são mais permitidas