salut ! merci de ta réponse trés réactive ^^
donc moi en fait ce que je veux faire sa serait un état récapitulatif de tous les clients de la base de données (avec leurs coordonnées et tout ça...)
en effet ton code ressemble fort à ce qu'il nous faudrait, il ne manque plus que l'impression.
Je ne sais pas quel est ton niveau d'étude, mais tu as appris ce code en cours? (je veux parler du code qui gère access par vb6)
La solution idéal serait de pouvoir directement transférer notre état dans vb mais bon je pense que je rêve ^^
Sinon j'ai tenté quelquechose à défaut d'utiliser l'état access, en fait sa reprend un peu ton idée de code sauf que je le gère par excel. J'ai donc fais un peu comme une "fiche-type" dans excel (en gros toute la mise en forme, les en-têtes et tout), puis par une requete je rempli les cellules.
J'ai pris ce code sur une appli que mon maitre de stage avait lui meme fait quand il était étudiant ^^
il y a aussi un morceau de code pour la sauvegarde et l'impression du document excel.
Je n'ai pas pu tout tester donc je ne sais pa si ce code fonctionne
Ma prof doit passer me voir lundi je lui demanderai pour notre probleme access on sait jamais, car excel c'est bien joli mais bon j'ai commencé avec access bon j'aurais bien aimé tout faire avec access ^^
je te laisse le code vb qui gére excel si tu veux y jeter un oeil, il y a beaucoup de fonctions et de variables publiques donc je copie tout pour que tu comprenne mieu ^^
Public rqsql As String
'Nom de la sauvegarde :
Public Sauvegarde As String
Dim dt As String
Public Sub Edit_fichecli()
'Déclaration des variables :
Dim Appli As Excel.application
Dim Feuille As Excel.Workbook
Dim Classeur As Excel.Worksheet
Dim cucli As Recordset
'Ouverture du logiciel puis d'un classeur :
Set Appli = CreateObject("excel.Application")
Set Feuille = Appli.Workbooks.Open(App.Path & "\excel\clients\fiche_client.xlsx")
Set Classeur = Feuille.Sheets(1)
'Faire la requête :
requeteclient cucli.Open rqsql, bdGestion
'Affichage de l'agent dans Excel :
Classeur.Cells(1, 1) = cucli!societe
Classeur.Cells(5, 3) = cucli!siret
Classeur.Cells(5, 5) = cucli!ape
Classeur.Cells(8, 3) = cucli!adresserue
Classeur.Cells(12, 3) = cucli!adressecp
Classeur.Cells(14, 3) = cucli!adresseville
Classeur.Cells(17, 3) = cucli!telpro
Classeur.Cells(19, 3) = cucli!telfax
Classeur.Cells(22, 3) = cucli!mail
Classeur.Cells(25, 3) = cucli!datecloture
Classeur.Cells(25, 6) = cucli!codetypeclient
Classeur.Cells(28, 3) = cucli!codetypeimposition
Classeur.Cells(30, 3) = cucli!codecatimposition
Classeur.Cells(33, 4) = cucli!codetyperegime
Classeur.Cells(35, 5) = cucli!periodicite
'Mise en forme d'un nom de fichier pour la sauvegarde :
dt = Day(Date) & "_" + Month(Date) & "_" + Year(Date) + " à " + Hour(Time) & "h" + Minute(Time)
cucli.MoveFirst
Sauvegarde = "\Excel\clients\Fiche client '" + cucli!societe + "'" + ".xls"
'Sauvegarde des informations sous un autre nom :
Feuille.SaveAs App.Path & Sauvegarde
'Demande si l'utilisateur veut imprimer le fichier :
If Print_Demande = True Then
Feuille.PrintOut
End If
'Fermeture de Excel :
Feuille.Close
'Message à l'utilisateur que l'enregistrement a bien été fait :
Print_Message
End Sub
Public Sub requeteclient()
rqsql = "select client.*, codetyperegime,periodicite from client,payer "
rqsql = rqsql + "where client.numclient=payer.numclient and "
rqsql = rqsql + "client.numclient='" + frmeditfichecli.lblnumcli + "'"
bdGestion.Execute (rqsql)
End Sub
Public Function Print_Demande() As Boolean
Message = "Voulez-vous imprimer " & App.Path & Sauvegarde & " ?"
Information = MsgBox(Message, vbYesNo, "Impression papier")
If Information = 6 Then
Print_Demande = True
Else
Print_Demande = False
End If
End Function
Public Sub Print_Message()
Message = "Fichier sauvegarder dans " & App.Path & Sauvegarde
MsgBox (Message)
End Sub