Libérer connexion objet Adodc
Bonjour,
J'ai un problème de sortie avec un ADO Data Control (adodc).
Ne pas confondre avec adodb
Dans une Form, je remplis un datagrid à l'aide d'une connexion à un fichier Excel avec un controle Adodc et tout va bien.
Ma connexion se fait de la façon suivante.
Code:
1 2 3 4 5 6
| Me.AdodcR1.Enabled = True
Me.DataGridR1.Enabled = True
AdodcR1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = C:\Dossier8\" & FmChoix.NomClient & ".xls;;Extended Properties=Excel 8.0;Persist Security Info=False"
AdodcR1.CommandType = adCmdText
AdodcR1.RecordSource = "SELECT * FROM [Decl_C$B11:D25] "
AdodcR1.Refresh |
Je quitte ma Form pour en ouvrir une autre en faisant:
Code:
1 2
| Me.AdodcR1.Recordset.Update
Me.AdodcR1.Recordset.Close |
Sur mon autre Form, je veux ouvrir mon fichier Excel pour entre autre faire un Printout comme ceci:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Private Sub Command1_Click()
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlRang As Excel.Range
Dim xlSheet As Excel.Worksheet
Dim Fichier As String
Fichier = "C:\Dossier8\" & FmChoix.NomClient & ".xls"
Set xlApp = New Excel.Application ' Création de l'objet EXCEL 8.0
With xlApp
' Ouverture du document XLS
Set xlBook = .Workbooks.Open(FileName:=Fichier, ReadOnly:=False, Editable:=True)
Set xlSheet = xlBook.Worksheets("Decl_C")
End With
xlApp.Visible = False
xlSheet.PrintOut |
J'obtiens un message d'erreur <Impossible d'accéder à tititoto.xls>
Si je ferme mon application et je colle mon code sur une Form d'une autre application, ça fonctionne très bien.
Vous avez compris que "tititoto", c'est le NomClient puisque l'utilisateur fait le choix du fichier à ouvrir.
Avec tous les test que j'ai fais, le problème dépend de la connexion de Adodc qui reste vivante.
Adodc.recordset.Close existe, mais Adodc.Connection.Close n'exixte pas. Comment peut-on libérer cette connexion.
Merci