Ciao a tutti,
Da access sto eseguendo un codice che mi apre un file di excel e mi aggiunge una macro al file che poi viene eseguito, infine la macro termina.
Se faccio questa operazione una volta tutto bene
Se provo fare la stessa operazione una seconda volta ottengo "Errore Runtime 91", ma utilizzando il tasto "stop" nel progetto vb torna a funzionare.
E' come se non svuotasse la memoria e non capisco come faglielo fare, il codice che uso è:
Dim Finestra As FileDialog
Dim Valore, vrtSelectedItem
Dim pathFileName As String
Dim oXL As Excel.Application
Dim oBook As Excel.Workbook
Dim oSheet As Excel.Worksheet
Set Finestra = Application.FileDialog(msoFileDialogOpen) 'Equivale a 1
'Titolo
Finestra.Title = "Apri File Distinta"
'Filtri di Ricerca
Finestra.Filters.Clear
Finestra.Filters.Add "Excel", "*.xls; *.xlsm; *.xlsx", 1
'Selezione Multipla
Finestra.AllowMultiSelect = False
'Apri Finestra
Valore = Finestra.Show
'Determinare pulsante premuto
'se si preme ok
If Valore = -1 Then
pathFileName = Trim(Finestra.SelectedItems.Item(1))
Shell ("rundll32.exe url.dll,FileProtocolHandler " & pathFileName)
Set oXL = Excel.Application 'CreateObject("Excel.Application")
oXL.Visible = True
'importa nel file selezionato un progetto VBA
oXL.VBE.ActiveVBProject.VBComponents.Import "C:\Temp\Prepara_distinta.bas"
'esegue un comando del progetto VBA importato
oXL.Run "Aggiungi_colonna_padre", oSheet
oXL.Run "salva", oSheet
'messaggio tutto ok
MsgBox "File Importato", vbMsgBoxSetForeground
oXL.UserControl = True
Set oXL = Nothing
Set Finestra = Nothing
'se si preme annulla
ElseIf Valore = 0 Then
'lbl1.Caption = "Premuto Annulla"
End If
Idee su come risolvere il problema?