Importation de Excel vers Acces en VB6
Résolu/FerméLenouveauapprenti Messages postés 300 Date d'inscription samedi 22 décembre 2018 Statut Membre Dernière intervention 7 avril 2024 - 15 avril 2023 à 20:00
- Importation de Excel vers Acces en VB6
- Liste déroulante excel - Guide
- Vb6 - Télécharger - Divers Utilitaires
- Mise en forme conditionnelle excel - Guide
- Si et excel - Guide
- Acces rapide - Guide
5 réponses
7 avril 2023 à 16:24
bonjour, moi j'utiliserais les techniques utilisées ici, mais en lisant les valeurs dans Excel et en créant des enregistrements dans Access.
Modifié le 14 avril 2023 à 16:54
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
14 avril 2023 à 17:41
Il est parfois pratique, dans la boucle, de s'arreter quand il n'y a plus de données, quand la cellule est vide.
Sinon, tu peux faire ceci, qui te donne le numéro de la dernière ligne utilisée dans la colonne A:
Cells(Rows.Count, 1).End(xlUp).Row
15 avril 2023 à 13:46
Bonjour
Merci pour votre aide.
15 avril 2023 à 15:23
Si tu n'as pas d'autre question, peux-tu marquer la discussion comme résolue?
15 avril 2023 à 16:22
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 question15 avril 2023 à 20:00
Bonjour
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