1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
'On ouvre le formulaire
DoCmd.OpenForm "interlocuteur_sf_clone"
'Création du fichier .xls et ouverture de la feuille
Set appexcel = CreateObject("Excel.Application")
Set wbexcel = appexcel.Workbooks.Open(CurrentProject.Path & "\interlocuteurs.xls")
appexcel.Sheets("Feuil1").Select
'cree un recordset sur la base SQL du formulaire :
Let SQLform = Form_interlocuteur_sf_clone.RecordSource
Set rst = CurrentDb.OpenRecordset(SQLform)
'Va au dernier enregistrement du recordset pour que...
rst.MoveLast
'...counter soit égal au nombre d'enregistrement
Let counter = rst.RecordCount
'On remplit le tableau .xls a partir de la 2eme ligne
Let ligne = 2
'Tant que le nbre de ligne-2 est diff. de counter, on remplit
While Not counter = (ligne - 2)
appexcel.Cells(ligne, 1) = Forms!interlocuteur_sf_clone.nom.Value
appexcel.Cells(ligne, 2) = Forms!interlocuteur_sf_clone.nom_prenom.Value
appexcel.Cells(ligne, 3) = Forms!interlocuteur_sf_clone.type_interloc.Value
appexcel.Cells(ligne, 4) = Forms!interlocuteur_sf_clone.ville.Value
appexcel.Cells(ligne, 5) = Forms!interlocuteur_sf_clone.pays_vf.Value
appexcel.Cells(ligne, 6) = Forms!interlocuteur_sf_clone.indicatif.Value
appexcel.Cells(ligne, 7) = Forms!interlocuteur_sf_clone.tel.Value
appexcel.Cells(ligne, 8) = Forms!interlocuteur_sf_clone.fax.Value
appexcel.Cells(ligne, 9) = Forms!interlocuteur_sf_clone.mobil.Value
appexcel.Cells(ligne, 10) = Forms!interlocuteur_sf_clone.email.Value
appexcel.Cells(ligne, 11) = Forms!interlocuteur_sf_clone.metier.Value
appexcel.Cells(ligne, 12) = Forms!interlocuteur_sf_clone.produit.Value
appexcel.Cells(ligne, 13) = Forms!interlocuteur_sf_clone.Responsable_de_mission.Value
appexcel.Cells(ligne, 14) = Forms!interlocuteur_sf_clone.date_entree.Value
appexcel.Cells(ligne, 15) = Forms!interlocuteur_sf_clone.date_asso.Value
appexcel.Cells(ligne, 16) = Forms!interlocuteur_sf_clone.statut.Value
appexcel.Cells(ligne, 17) = Forms!interlocuteur_sf_clone.lang.Value
appexcel.Cells(ligne, 18) = Forms!interlocuteur_sf_clone.asste.Value
'appexcel.Cells(ligne, 19) = formulaire.Fields(18)
'Permet d'éviter un message d'erreur quand il n'y a plus d'enregistrement
If Not counter = (ligne - 1) Then
'On passe a l'enregistrement suivant du formulaire
DoCmd.GoToRecord , interlocuteur_sf_clone, acNext
End If
'On incremente ligne pour passer a la ligne suivante dans le tableau
Let ligne = ligne + 1
Wend
'Ferme le formulaire:
DoCmd.Close acForm, "interlocuteur_sf_clone"
'Rend visible le fichier .xls
appexcel.Visible = True |
Partager