hola de nuevo a todos
tengo una duda con la cancelación del cuadro de dialogo que aparece con el
método GetOpenFilename. Aunque se que devuelve false, cuando se establece
Multiselect a true he observado varias cosas/problemas que me han obligado a
saltarme los posibles errores como se ve en el siguiente fragmento de
código:->
Private Sub SeleccionarArchivos1()
Dim Arch, i As Long, f As Long, ul As Long
Arch = Application.GetOpenFilename( _
filefilter:="Excel Files (*.xls), *.xls", _
Title:="Elegir archivos", _
MultiSelect:=True)
On Error Resume Next
If Arch(1) = False Then Exit Sub
On Error GoTo 0
la duda esta en que a pesar de que al declararla como multiselect en teoría
devuelve una matriz, con 'If Arch(1)=false then ..., me da el error 'No
coinciden los tipos' si se cancela, y con if Arch=False no me lo da al
cancelar pero me lo da si acepto(Abrir). También he probado con 'If
IsEmpty(Arch) then' pero sin resultado.
Aunque supongo que no pasa nada por usar 'on error resume next' (parece
funcionar bien), me gustaría saber si existe otra forma especifica de tratar
la cancelación de GetOpenFilename
un saludo y hasta pronto
Ivan
Leer las respuestas