Exporter un sous-formulaire vers Excel
Bonjour à tous.
Je n'arrive pas à exporter les champs d'un sous-formulaire.
(Ce sous-formulaire s'affiche dans un formulaire)
Sur le formulaire j'ai créé un bouton qui appelle le module suivant :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| Function exportexcel()
Dim appexcel As Excel.Application
Dim wbexcel As Excel.Workbook
Set appexcel = CreateObject("Excel.Application")
appexcel.Visible = True
Set wbexcel = appexcel.Workbooks.Open(CurrentProject.Path & "\Monclasseur.xls")
appexcel.Sheets("Feuil1").Select
Let ligne = 2
'Exportation des champs du formulaire:
appexcel.Cells(ligne, 1) = Forms!formulaire.Client.Value
appexcel.Cells(ligne, 2) = Forms!formulaire.Pays.Value
appexcel.Cells(ligne, 3) = Forms!formulaire.Ville.Value
appexcel.Cells(ligne, 4) = Forms!formulaire.Adresse.Value
Let ligne = 3
'Tentatives d'exportation des champs du sous-formulaire:
appexcel.Cells(ligne, 2) = Forms![formulaire]![sousformulaire]![type].Value
appexcel.Cells(ligne, 3) = Forms!formulaire.Form!sousformulaire.type.Value
End Function |
Les champs du formulaire sont correctement exportés.
Mais j'ai une erreur d'exécution pour les tentatives d'exportation du sous-formulaire:
Impossible de trouver le champ 'sousformulaire' auquel il est fait référence dans votre expression. (Il s'agit des deux dernières lignes avant le End Function)
Il reconnait donc mon sousformulaire comme un champ et n'atteint pas le champ désiré. :?
J'ai aussi essayé de cette manière:
Code:
appexcel.Cells(ligne, 2) = Forms!sousformulaire.type.Value
Mais dans ce cas il ne trouve pas le sous-formulaire.
La méthode d'exportation est un peu brute. Dois-je changer de méthode?
J'ai lu sur ce forum que le code suivant pouvait m'être utile:
Code:
me.NomSousForm.Form.Recordset
Dois-je alors passer par un recordset?
Merci d'avance!
;)