Bonjour!
je voudrai exporter une feuille Excel vers une table d'une base
Access. Comment faire???
Il ne faut pas que les lignes d'access précédentes soient écrasées.
Merci d'avance!!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Pascal Engelmajer
Salut, ne vaut-il pas mieux importer depuis access ? -- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel "slimane" a écrit dans le message de news:
Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
Salut,
ne vaut-il pas mieux importer depuis access ?
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
"slimane" <slimane62@caramail.com> a écrit dans le message de news:
8101d500.0404060816.3e9efe87@posting.google.com...
Bonjour!
je voudrai exporter une feuille Excel vers une table d'une base
Access. Comment faire???
Il ne faut pas que les lignes d'access précédentes soient écrasées.
Merci d'avance!!
Salut, ne vaut-il pas mieux importer depuis access ? -- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel "slimane" a écrit dans le message de news:
Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
Techniciel
Bonjour,
Il faut s'assurer que la table access et que le tableau excel ont visiblement la même structure (champs de même type et dans le même ordre). En cas de besoin on peut masquer des colonnes (access ou excel) et on peut déplacer des colonnes à la souris en faisant glisser l'entête (access seulement).
Ensuite, sélectionner les cellules dans Excel (Maj+Ctrl+Fin pour aller jusqu'à la fin du bloc de données si volumineux) puis Copier. Dans Access, ouvrir la table puis Edition/Coller par ajout
Voili
En espérant vous avoir aidé
Pascal "slimane" a écrit dans le message de news:
Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
Bonjour,
Il faut s'assurer que la table access et que le tableau excel ont
visiblement la même structure (champs de même type et dans le même ordre).
En cas de besoin on peut masquer des colonnes (access ou excel) et on peut
déplacer des colonnes à la souris en faisant glisser l'entête (access
seulement).
Ensuite, sélectionner les cellules dans Excel (Maj+Ctrl+Fin pour aller
jusqu'à la fin du bloc de données si volumineux) puis Copier.
Dans Access, ouvrir la table puis Edition/Coller par ajout
Voili
En espérant vous avoir aidé
Pascal
"slimane" <slimane62@caramail.com> a écrit dans le message de
news:8101d500.0404060816.3e9efe87@posting.google.com...
Bonjour!
je voudrai exporter une feuille Excel vers une table d'une base
Access. Comment faire???
Il ne faut pas que les lignes d'access précédentes soient écrasées.
Merci d'avance!!
Il faut s'assurer que la table access et que le tableau excel ont visiblement la même structure (champs de même type et dans le même ordre). En cas de besoin on peut masquer des colonnes (access ou excel) et on peut déplacer des colonnes à la souris en faisant glisser l'entête (access seulement).
Ensuite, sélectionner les cellules dans Excel (Maj+Ctrl+Fin pour aller jusqu'à la fin du bloc de données si volumineux) puis Copier. Dans Access, ouvrir la table puis Edition/Coller par ajout
Voili
En espérant vous avoir aidé
Pascal "slimane" a écrit dans le message de news:
Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
michdenis
Bonjour Slimane,
Voici une façon de faire :
Tu dois insérer une nouvelle bibliothèque à ton projet selon la version d'office que tu possèdes:
Microsoft DAO 3.6 Objects librairy 'Excel 2000
Dans l'exemple soumis : Base de données : BD2.Mdb Table : Etudiant Champs de la table : NumEtudiant NomEtudiant NumTel
Feuille Excel : Feuil1 Plage de données A1:C5 Chaque ligne de cette plage représentant un enregistrement.
Attention : Dans ce genre de situation, tu dois t'assurer que tu ne violes pas les paramêtres de ta table : Exemple : Doublons dans un champ primaire, Champ primaire Nul (pas de données dans ta feuille excel dans ce champ .... type de données s'il y a lieu... sinon ça va planter !!!
'------------------------------------------- Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet
Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb") Set MyTable = MyDB.OpenRecordset("Etudiant") Set Sh = Worksheets("Feuil1")
With Sh For Each r In .Range("A1:C5").Rows With MyTable .AddNew !NumEtudiant = Sh.Cells(r.Row, 1) !NomEtudiant = Sh.Cells(r.Row, 2) !NumTel = Sh.Cells(r.Row, 3) .Update End With Next End With Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub '-------------------------------------------
Salutations!
"slimane" a écrit dans le message de news: Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
Bonjour Slimane,
Voici une façon de faire :
Tu dois insérer une nouvelle bibliothèque à ton projet
selon la version d'office que tu possèdes:
Microsoft DAO 3.6 Objects librairy 'Excel 2000
Dans l'exemple soumis :
Base de données : BD2.Mdb
Table : Etudiant
Champs de la table :
NumEtudiant
NomEtudiant
NumTel
Feuille Excel : Feuil1
Plage de données A1:C5
Chaque ligne de cette plage représentant un enregistrement.
Attention : Dans ce genre de situation, tu dois t'assurer que tu ne violes
pas les paramêtres de ta table : Exemple : Doublons dans un champ
primaire, Champ primaire Nul (pas de données dans ta feuille excel
dans ce champ .... type de données s'il y a lieu... sinon ça va planter !!!
'-------------------------------------------
Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet
Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb")
Set MyTable = MyDB.OpenRecordset("Etudiant")
Set Sh = Worksheets("Feuil1")
With Sh
For Each r In .Range("A1:C5").Rows
With MyTable
.AddNew
!NumEtudiant = Sh.Cells(r.Row, 1)
!NomEtudiant = Sh.Cells(r.Row, 2)
!NumTel = Sh.Cells(r.Row, 3)
.Update
End With
Next
End With
Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub
'-------------------------------------------
Salutations!
"slimane" <slimane62@caramail.com> a écrit dans le message de news:8101d500.0404060816.3e9efe87@posting.google.com...
Bonjour!
je voudrai exporter une feuille Excel vers une table d'une base
Access. Comment faire???
Il ne faut pas que les lignes d'access précédentes soient écrasées.
Merci d'avance!!
Tu dois insérer une nouvelle bibliothèque à ton projet selon la version d'office que tu possèdes:
Microsoft DAO 3.6 Objects librairy 'Excel 2000
Dans l'exemple soumis : Base de données : BD2.Mdb Table : Etudiant Champs de la table : NumEtudiant NomEtudiant NumTel
Feuille Excel : Feuil1 Plage de données A1:C5 Chaque ligne de cette plage représentant un enregistrement.
Attention : Dans ce genre de situation, tu dois t'assurer que tu ne violes pas les paramêtres de ta table : Exemple : Doublons dans un champ primaire, Champ primaire Nul (pas de données dans ta feuille excel dans ce champ .... type de données s'il y a lieu... sinon ça va planter !!!
'------------------------------------------- Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet
Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb") Set MyTable = MyDB.OpenRecordset("Etudiant") Set Sh = Worksheets("Feuil1")
With Sh For Each r In .Range("A1:C5").Rows With MyTable .AddNew !NumEtudiant = Sh.Cells(r.Row, 1) !NomEtudiant = Sh.Cells(r.Row, 2) !NumTel = Sh.Cells(r.Row, 3) .Update End With Next End With Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub '-------------------------------------------
Salutations!
"slimane" a écrit dans le message de news: Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
Clément Marcotte
Bonjour,
1) Sélectionner et copier dans Excel.
2) Coller par ajout dans une table d'Access.
Le collage par ajout, comme son nom l'indique, ajoute des enregistrements sans écraser les autres. Pas besoin de rechercher la dernière ligne de la table.
"slimane" a écrit dans le message de news:
Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
Bonjour,
1) Sélectionner et copier dans Excel.
2) Coller par ajout dans une table d'Access.
Le collage par ajout, comme son nom l'indique, ajoute des
enregistrements sans écraser les autres. Pas besoin de rechercher la
dernière ligne de la table.
"slimane" <slimane62@caramail.com> a écrit dans le message de
news:8101d500.0404060816.3e9efe87@posting.google.com...
Bonjour!
je voudrai exporter une feuille Excel vers une table d'une base
Access. Comment faire???
Il ne faut pas que les lignes d'access précédentes soient écrasées.
Merci d'avance!!
Le collage par ajout, comme son nom l'indique, ajoute des enregistrements sans écraser les autres. Pas besoin de rechercher la dernière ligne de la table.
"slimane" a écrit dans le message de news:
Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
Pierre CFI [mvp]
bonjour en 97 il faut donner un nom à ta zone excel, ici CLIENT, j'ajoute client de excel à la table client de ajout_97.mdb Sub export() Dim bd As DAO.Database Set bd = OpenDatabase(ThisWorkbook.FullName, False, False, "excel 8.0") bd.Execute "INSERT INTO CLIENT IN 'd:accessajout_97.mdb' SELECT CLIENT.* FROM CLIENT" bd.Close Set bd = Nothing End Sub Attention il faut charger la réf Microsoft dao 3.xxx dans le module excel
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site perso http://access.cfi.free.fr "slimane" a écrit dans le message de news:
Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
bonjour
en 97
il faut donner un nom à ta zone excel, ici CLIENT, j'ajoute client de excel à la table client de ajout_97.mdb
Sub export()
Dim bd As DAO.Database
Set bd = OpenDatabase(ThisWorkbook.FullName, False, False, "excel 8.0")
bd.Execute "INSERT INTO CLIENT IN 'd:accessajout_97.mdb' SELECT CLIENT.* FROM CLIENT"
bd.Close
Set bd = Nothing
End Sub
Attention il faut charger la réf Microsoft dao 3.xxx dans le module excel
--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B
Site perso
http://access.cfi.free.fr
"slimane" <slimane62@caramail.com> a écrit dans le message de news:8101d500.0404060816.3e9efe87@posting.google.com...
Bonjour!
je voudrai exporter une feuille Excel vers une table d'une base
Access. Comment faire???
Il ne faut pas que les lignes d'access précédentes soient écrasées.
Merci d'avance!!
bonjour en 97 il faut donner un nom à ta zone excel, ici CLIENT, j'ajoute client de excel à la table client de ajout_97.mdb Sub export() Dim bd As DAO.Database Set bd = OpenDatabase(ThisWorkbook.FullName, False, False, "excel 8.0") bd.Execute "INSERT INTO CLIENT IN 'd:accessajout_97.mdb' SELECT CLIENT.* FROM CLIENT" bd.Close Set bd = Nothing End Sub Attention il faut charger la réf Microsoft dao 3.xxx dans le module excel
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site perso http://access.cfi.free.fr "slimane" a écrit dans le message de news:
Bonjour! je voudrai exporter une feuille Excel vers une table d'une base Access. Comment faire??? Il ne faut pas que les lignes d'access précédentes soient écrasées. Merci d'avance!!
slimane62
Bonjour michdenis,
Je ne comprend pas ce que tu appelle :"Tu dois insérer une nouvelle bibliothèque à ton projet selon la version d'office que tu possèdes Microsoft DAO 3.6 Objects librairy 'Excel 2000" J'ai ecrit cette macro VBA et le msg d'erreur est "Type défini par l'utilisateur non défini", une explication svp! et Que veut dire le "r" dans la macro?
Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb") Set MyTable = MyDB.OpenRecordset("Etudiant") Set Sh = Worksheets("Feuil1")
With Sh For Each "r" In .Range("A1:C5").Rows With MyTable .AddNew !NumEtudiant = Sh.Cells(r.Row, 1) !NomEtudiant = Sh.Cells(r.Row, 2) !NumTel = Sh.Cells(r.Row, 3) .Update End With Next End With Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub '-------------------------------------------
Merci de votre aide!
Bonjour michdenis,
Je ne comprend pas ce que tu appelle :"Tu dois insérer une nouvelle
bibliothèque à ton projet selon la version d'office que tu possèdes
Microsoft DAO 3.6 Objects librairy 'Excel 2000"
J'ai ecrit cette macro VBA et le msg d'erreur est "Type défini par
l'utilisateur non défini", une explication svp!
et Que veut dire le "r" dans la macro?
Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet
Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb")
Set MyTable = MyDB.OpenRecordset("Etudiant")
Set Sh = Worksheets("Feuil1")
With Sh
For Each "r" In .Range("A1:C5").Rows
With MyTable
.AddNew
!NumEtudiant = Sh.Cells(r.Row, 1)
!NomEtudiant = Sh.Cells(r.Row, 2)
!NumTel = Sh.Cells(r.Row, 3)
.Update
End With
Next
End With
Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub
'-------------------------------------------
Je ne comprend pas ce que tu appelle :"Tu dois insérer une nouvelle bibliothèque à ton projet selon la version d'office que tu possèdes Microsoft DAO 3.6 Objects librairy 'Excel 2000" J'ai ecrit cette macro VBA et le msg d'erreur est "Type défini par l'utilisateur non défini", une explication svp! et Que veut dire le "r" dans la macro?
Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb") Set MyTable = MyDB.OpenRecordset("Etudiant") Set Sh = Worksheets("Feuil1")
With Sh For Each "r" In .Range("A1:C5").Rows With MyTable .AddNew !NumEtudiant = Sh.Cells(r.Row, 1) !NomEtudiant = Sh.Cells(r.Row, 2) !NumTel = Sh.Cells(r.Row, 3) .Update End With Next End With Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub '-------------------------------------------
Merci de votre aide!
Pascal Engelmajer
Salut, dans l'éditeur VBA Outils/Références .... -- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel "slimane" a écrit dans le message de news:
Bonjour michdenis,
Je ne comprend pas ce que tu appelle :"Tu dois insérer une nouvelle bibliothèque à ton projet selon la version d'office que tu possèdes Microsoft DAO 3.6 Objects librairy 'Excel 2000" J'ai ecrit cette macro VBA et le msg d'erreur est "Type défini par l'utilisateur non défini", une explication svp! et Que veut dire le "r" dans la macro?
Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb") Set MyTable = MyDB.OpenRecordset("Etudiant") Set Sh = Worksheets("Feuil1")
With Sh For Each "r" In .Range("A1:C5").Rows With MyTable .AddNew !NumEtudiant = Sh.Cells(r.Row, 1) !NomEtudiant = Sh.Cells(r.Row, 2) !NumTel = Sh.Cells(r.Row, 3) .Update End With Next End With Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub '-------------------------------------------
Merci de votre aide!
Salut,
dans l'éditeur VBA
Outils/Références ....
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
"slimane" <slimane62@caramail.com> a écrit dans le message de news:
8101d500.0404070109.777054b1@posting.google.com...
Bonjour michdenis,
Je ne comprend pas ce que tu appelle :"Tu dois insérer une nouvelle
bibliothèque à ton projet selon la version d'office que tu possèdes
Microsoft DAO 3.6 Objects librairy 'Excel 2000"
J'ai ecrit cette macro VBA et le msg d'erreur est "Type défini par
l'utilisateur non défini", une explication svp!
et Que veut dire le "r" dans la macro?
Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet
Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb")
Set MyTable = MyDB.OpenRecordset("Etudiant")
Set Sh = Worksheets("Feuil1")
With Sh
For Each "r" In .Range("A1:C5").Rows
With MyTable
.AddNew
!NumEtudiant = Sh.Cells(r.Row, 1)
!NomEtudiant = Sh.Cells(r.Row, 2)
!NumTel = Sh.Cells(r.Row, 3)
.Update
End With
Next
End With
Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub
'-------------------------------------------
Salut, dans l'éditeur VBA Outils/Références .... -- Amicalement. Pascal "il n'y a pas de vent favorable pour celui qui ne sait pas ou il va." Sénèque. http://www.ilyapa.net/excel "slimane" a écrit dans le message de news:
Bonjour michdenis,
Je ne comprend pas ce que tu appelle :"Tu dois insérer une nouvelle bibliothèque à ton projet selon la version d'office que tu possèdes Microsoft DAO 3.6 Objects librairy 'Excel 2000" J'ai ecrit cette macro VBA et le msg d'erreur est "Type défini par l'utilisateur non défini", une explication svp! et Que veut dire le "r" dans la macro?
Sub AjouterDesEnregistrementsÀUneTable()
Dim MyDB As Database, MyTable As Recordset, Sh As Worksheet Set MyDB = OpenDatabase("C:Mes documentsbd2.mdb") Set MyTable = MyDB.OpenRecordset("Etudiant") Set Sh = Worksheets("Feuil1")
With Sh For Each "r" In .Range("A1:C5").Rows With MyTable .AddNew !NumEtudiant = Sh.Cells(r.Row, 1) !NomEtudiant = Sh.Cells(r.Row, 2) !NumTel = Sh.Cells(r.Row, 3) .Update End With Next End With Set MyDB = Nothing: Set MyTable = Nothing: Set Sh = Nothing
End Sub '-------------------------------------------