non t'es obligé de les mettre. sinon tu peux faire cette import sans passé par une fonction . en fesant fichier->données externe et en choisissant ton fichier excel.
non t'es obligé de les mettre. sinon tu peux faire cette import sans passé par une fonction . en fesant fichier->données externe et en choisissant ton fichier excel.
bonjours,
Oui mais le probleme c'est que je veut commmencer par une ligne spéciale
j'ai fait comme vous me l'avait dis, j'ai mis les noms des colonnes de mes tables dans la ligne de code mais il m'affiche une erreur dans le insert into.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 While oWSht.Range("I" & i).Value <> "" 'requète SQL (avec en paramètre la ligne i et le numéro de la colonne comme précisé au-dessus) 'je mets ici le nom de ma table et entre () le nom de mes colonnes, 'je n'est pas besoin de restriction car la seul que j'ai conserne la ligne 'et elle est utilisé dans le While cSQL = "insert into [SAISIE] ( [numclient], [numfiliale],[PALETTE 80X120],[PALETTE 40X60],[PALETTE 100X120],[ROLLS],[TCP],[DIRECTIONNELLE],[TRI],[GERBABLE],[POIDS déclaré],[POIDS pesé],[nbcolis],[date] ) " 'exécute la requète DoCmd.RunSQL cSQL 'on incrémente la variable i pour passer à la ligne suivante i = i + 1 Wend
Mais tous ces champs :
[numclient], [numfiliale],[PALETTE 80X120],[PALETTE 40X60],[PALETTE 100X120],[ROLLS],[TCP],[DIRECTIONNELLE],[TRI],[GERBABLE],[POIDS déclaré],[POIDS pesé],[nbcolis],[date] ,
tu les recupère bien d'une autre table afin de les inserer dans ta nouvelle table [SAISIE]?
non le les recupere d'une feuille excel qui a les entete de colonne identique.
tu vois se que je veut faire?? (si tu n'as ma bien compris je réexplique sinon passe ce paragraphe) je veut importer des ligne de ma feuille excel dans ma table SAISIE , l'importation se fait par ligne. les colonnes de la table et de la feuille corespondent (ordre et la syntaxe).
As-tu une idée pour mon probleme??
je re stap j'essairai de me pencher sur ton pb...
normal que t'es une erreur ta requête n'est pas correcte la syntaxte est la suivanteEnvoyé par k_pone
après faut que tu remplace ce qui est entre corchet par les bonnes valeurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 INSERT INTO [table] ([champ1], [champ2],...) VALUES([valeur1], [valeur2], ...)
toi tu as mis uniquement les champs de ta table sans leurs attribués de valeur.
Si tes valeurs proviennent d'un fichier excel regarde les commentaires de ce sujet on à deja expliqué comment ça fonctionne.
si tu as des autres questions sur le fonctionnement de l'import ou autre n'ésite pas.
vu que mais valeur entre la table et la feuille excel sont identique es que je dois les répertorier toute dans le insert into??
je sais pas si il n'y a pas un autre moyen en tout cas si tu fais comme sa, sa marchera a coup sur
si tu veux importer toutes les lignes de ton fichier excel tu n'est pas obligé
tu peux utilisé l'import de Access
Fichier->donnée externe->import
puis tu choisi ton fichier excel
et tu suis les indication
je le sais déjà mais moi pour mon importation , elle doit commancer à une ligne définit par une variable. c'est pour sa que la boucle while est bien car je peut mettre en parametre mon numero de ligne de départ et la fin mais en se qui conserne le insert into je ne voi par comment mettre les parametres qui permettent la liaison entre les 2 tableau (excel et access)
oki.
ba écoute regarde un peu la discution depui le début on a expiqué comment ca fonctionne.
je ne comprand pas les parametre que vous avez mis apres values
Code : Sélectionner tout - Visualiser dans une fenêtre à part cSQL = "insert into [test] ( [NomVille], [CPVille], [CodeDepartement#]) values (" & Chr(34) & oWSht.Cells(i, 9) & Chr(34) & ", " & Chr(34) & oWSht.Cells(i, 11) & Chr(34) & ", " & Chr(34) & Left(oWSht.Cells(i, 11), 2) & Chr(34) & ")"
oWSht --->> c'est le nom de la feuille de travail...toi il faut que tu la renomme
et dans le .Cells(i, 9)
le 9 c'est le numero de la colonne que tu veu importer mais totofe a déjà tout expliqué ta qu'a relire tout est expliqué clairement.
j'ai compris que le second chiffre entre paranthèse etait la colonne et le premier la ligne mais pourquoi il y a chr13 avant??
la syntaxe apres le values est "nomdelafeuille".Cells("laligne","lacolonne")
c'est bien sa non ?? et la normalement chaque parametre correspond au nom du champs de ma table dans l'ordre.
en tout cas c'est ce que je viens de comprandre
oui c'est bien ca. et pour le chr(13) je l'ai aussi expliqué. elle renvoi un gillemet. je l'est mi pour évité des erreur SQL au cas où une cellule de ton fichier serait vide.
merci bien totofe.
à la prochaine sur une autre boiboite de dialogue
Les années passent mais les forums restent actif..enfin gspr
Voila j'ai utilisé le code d'importation pour une de mes macros sur access
Mais débutant en VBA je n'arrive pas a executer ma macro
en fait je me demande si j'ai bien paramétré mon Visual Basic Editor.
erreur a la premiere ligne , il ne reconniat pas le type dans
un petit coup de mains quelqu'un ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part Dim oApp As Excel.Application
merci
salut et bienvenu sur le forum
effectivement tu as du oublié de mettre la référence à Excel
Outils --> Références --> Microsoft excel XX.0 Object library
Bonjour,
Merci pour ce conseil
je n'y croyais plus
Savez vous quelle est la démarche pour attacher cette macro a un bouton sur un formulaire ?
J'ai créé un bouton mais je ne connais pas trop la manière d'y attacher ma macro. Ou cela doit il etre fait ?
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager