Importation de Excel vers Acces en VB6
RésoluLenouveauapprenti Messages postés 306 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai conçu une application en VB6, reliée à une BD en acces.
Je veux y ajouter une commande d'importation d'Excel vers acces, mais je ne sais pas comment procéder.
J'ai besoin d'importer les données suivantes
N° d'ordre
Immeuble n°
Appartement n°
Propriétaire
Date de redevabilité
Pour remplir les Datafields correspondantes en acces (BD)
Merci d'avance pour toute aide.
Android / Chrome 111.0.0.0
- Importation de Excel vers Acces en VB6
- Liste déroulante excel - Guide
- Vb6 - Télécharger - Divers Utilitaires
- Acces rapide - Guide
- Mise en forme conditionnelle excel - Guide
- Word et excel gratuit - Guide
5 réponses
bonjour, moi j'utiliserais les techniques utilisées ici, mais en lisant les valeurs dans Excel et en créant des enregistrements dans Access.
Bonjour,
Merci pour votre réponse. Je crois que je suis sur le bon chemin pour resoudre mon problème. Cependant il me reste un point, à savoir le nombre de lignes de la Table Informations (Excel), ce nombre (j) est important pour ma boucle.
Dim i, l, k as integer
Set xlw = xlo.WorkBooks.Open ("C:\Informations.xlsx")
xlw.sheets("Feuil1").Select
' determiner le nombre de lignes
J= xlw.Application.Rows.count
' teste pour savoir le nombre j
MsgBox "Nombre" & " " & j
Seulement le message me renvoi
J= 1048576
alors que la table Informations contient 7 lignes
Merci d'avance pour toute correction de mon code
Re bonjour.
Je n'ai pas oublié de marquer la question comme RESOLUE.
J'attends la fin de mon code d'importation, pour le transcrire ici, on ne sait jamais si quelqu'un d'autre en aura besoin.
Encore merci
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionBonjour
Je vous remis le code pour importer les données d'un tableau en Excel.
1 Déclaration générale
Dim xlo as New Excel.Application Dim xlw as Excel.WorkBook Dim CheminTableau as string Dim Imm, Appt,Prop,Cin as string Dim DateProp as Date
2 Boite de dialogue
On error goto nnn: CmnDialog.Filter = "Toutes les extentions (*.xlsx)|*.*" CmnDialog.ShowOpen CheminTableau = CmnDialog.FileNale nnn:
3 Importation
Dim i,j,k,l as Integer
xlw.Sheets("Feuil1").Select
j = Cells(Rows.Count, 1).End(xlUp).Row
l = 0
k = 0
For i = 1 to j step 1
l = l + 1
Imm = xlw.Application.Cells(l + 1, k + 1)
Appt = xlw.Application.Celks(l + 1, k + 2)
Prop = xlw.Application.Cells(l + 1, k + 3)
Cin = xlw.Application.Cells(l + 1, k + 4)
DateProp = xlw.Application.Cells(l + 1, k + 5)
If Imm = "" then
GoTo Pass:
Exit sub
End if
'N° d'ordre
SQls ="Select * from TableParametres where (Naure = '"& CStr(Nature) &"')" & "Order by NOrdre asc"
If RS.State = adStateOpen then RS.Clode
RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic
If RS![NOrdre]<>0 then
RS.MoveLast
NOrdre=RS![NOrdre]+1
Else
NOrdre=1
End if
RS Close
'Enregistrement
SQLs="Select * from TableParametres where ((Societe='"& CStr(VarSoviete) &"')" _
& "and(Operation='"& CStr(Operation)&"')and(Considtance='"& CStr(Consistance)&"')" _
& "and(Immeuble='"& CStr(Imm)&"')and(Appartement='"& CStr(Appt) &"')" _
& "and(Cin='"& CStr(Cin) &"'))"
If RS.State=adStateOpen then RS.Close
RS.Open SQLs, DB, adOpenKeyset, adLockPessimistic
If RS.EOF then
GoTo Oks:
Exit Sub
Else
GoTo Nos:
Exit Sub
End If
Oks:
RS.AddNew
RS![NOrdre]=NOrdre
RS![Nature]=Nature
RS![Operation]=Operation
RS![Societe]=VarSociete
RS![Immeuble]=Imm
RS![Appartement]=Appt
RS![Proprietaire]=Prop
RS![cin]=Cin
RS![DatePropriete]=DateProp
RS.Update
RS.Close
Nos:
Pass:
Next i