OVH Cloud OVH Cloud

export excel

4 réponses
Avatar
denis le breton
Bonsoir
une petite question (une de plus)
je souhaite exporter une table ou une requête vers excel
Pour cela j'ai trouvé sur le forum
DoCmd.OutputTo acOutputQuery, "NomDeTeRequete", acFormatXLS,
"NomClasseur.xls", True
ou
par une macro, faire ceci:
TransférerFeuilleCalcul
avec paramètres:
Exportation
Microsoft Excel 8-10
table1
classeur1.xls
Oui
MaFeuille

MaFeuille sera le nom de l'onglet créé dans le classeur classeur1 enregistré
sous mes documents

Mais ! est il possible de définir la cellule de départ pour l'export exemple
en A5 ou colonne A première cellule vide ?
Merci de votre réponse
Denis

4 réponses

Avatar
3stone
Salut,

"denis le breton" <
| je souhaite exporter une table ou une requête vers excel
| Pour cela j'ai trouvé sur le forum
| DoCmd.OutputTo acOutputQuery, "NomDeTeRequete", acFormatXLS,
| "NomClasseur.xls", True
| ou
| par une macro, faire ceci:
| TransférerFeuilleCalcul
| avec paramètres:
| Exportation
| Microsoft Excel 8-10
| table1
| classeur1.xls
| Oui
| MaFeuille
|
| MaFeuille sera le nom de l'onglet créé dans le classeur classeur1 enregistré
| sous mes documents
|
| Mais ! est il possible de définir la cellule de départ pour l'export exemple
| en A5 ou colonne A première cellule vide ?


Utilise :
DoCmd.TransferSpreadsheet [typetransfert][, typefeuille], nomtable, nomfichier[,
contientnomschamps][, étendue]


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
denis le breton
Merci pour la piste 3stone, mais hélas cette méthode ne peut fonctionner en
export
En effet l'aide sur la méthode précise :
"Étendue Variant facultatif. Expression chaîne qui correspond à une
plage valide de cellules ou au nom d'une plage de la feuille de calcul. Cet
argument n'est valable que pour une importation. Laissez cet argument vierge
pour importer la feuille de calcul entière. Lorsque vous effectuez une
exportation vers une feuille de calcul, vous devez laisser cet argument
vierge. Si vous tapez une plage, l'exportation échoue."
Je suis donc dans l'impasse
Mon besoin est le suivant, J'ai plusieurs tables j'ai besoin de récupérer
des données que les requêtes execute sur ces tables (regroupemnet comptage,
...)
et de construire un doc excel de synthèse reprenant sur une pga plusieurs
résultat de requête. Exemple Vendeur, Equipe, Région, pour les tables
nombre de ventes et CA par vendeur, cumul par Equipe et cumul par région
Les requêtes tournent, l'export aussi mais dans autant de feuille excel que
de requête. (Si je me fais bien comprendre)
Voila, cela va t -il succiter d'autres réponses ?
A+
Denis

Salut,

"denis le breton" <
| je souhaite exporter une table ou une requête vers excel
| Pour cela j'ai trouvé sur le forum
| DoCmd.OutputTo acOutputQuery, "NomDeTeRequete", acFormatXLS,
| "NomClasseur.xls", True
| ou
| par une macro, faire ceci:
| TransférerFeuilleCalcul
| avec paramètres:
| Exportation
| Microsoft Excel 8-10
| table1
| classeur1.xls
| Oui
| MaFeuille
|
| MaFeuille sera le nom de l'onglet créé dans le classeur classeur1 enregistré
| sous mes documents
|
| Mais ! est il possible de définir la cellule de départ pour l'export exemple
| en A5 ou colonne A première cellule vide ?


Utilise :
DoCmd.TransferSpreadsheet [typetransfert][, typefeuille], nomtable, nomfichier[,
contientnomschamps][, étendue]


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/




Avatar
Gilbert
Bonjour,

Voici ce que j'utilise

Set MaDb = CurrentDb
Set rst = MaDb.OpenRecordset("RqteTmp")
Set XL_App = CreateObject("Excel.Application")
Set XL_Classeur = XL_App.Workbooks.Open(NomModele)
Set XL_Feuille = XL_App.Sheets("Feuil1")

'-- Création des en-têtes de
colonnes ------------------------------------------------------------
With XL_Feuille
varColonne = 1
For Each Fld In rst.Fields
.Cells(1, varColonne).Value = Fld.Name
varColonne = varColonne + 1
Next
End With

'-- Copie des
données --------------------------------------------------------------------
--------
If rst.RecordCount <> 0 Then
rst.MoveLast
rst.MoveFirst
Set rngCurr = XL_Feuille.Range(XL_Feuille.Cells(3, 1),
XL_Feuille.Cells(2 + rst.RecordCount, 3))
rngCurr.CopyFromRecordset rst

.
.
End If

Set rngCurr = Nothing
Set XL_Feuille = Nothing
Set XL_Classeur = Nothing
Set XL_App = Nothing
Set rst = Nothing
Set MaDb = Nothing


Gilbert

"denis le breton" a écrit dans le
message de news:
Merci pour la piste 3stone, mais hélas cette méthode ne peut fonctionner
en

export
En effet l'aide sur la méthode précise :
"Étendue Variant facultatif. Expression chaîne qui correspond à une
plage valide de cellules ou au nom d'une plage de la feuille de calcul.
Cet

argument n'est valable que pour une importation. Laissez cet argument
vierge

pour importer la feuille de calcul entière. Lorsque vous effectuez une
exportation vers une feuille de calcul, vous devez laisser cet argument
vierge. Si vous tapez une plage, l'exportation échoue."
Je suis donc dans l'impasse
Mon besoin est le suivant, J'ai plusieurs tables j'ai besoin de récupérer
des données que les requêtes execute sur ces tables (regroupemnet
comptage,

...)
et de construire un doc excel de synthèse reprenant sur une pga plusieurs
résultat de requête. Exemple Vendeur, Equipe, Région, pour les tables
nombre de ventes et CA par vendeur, cumul par Equipe et cumul par région
Les requêtes tournent, l'export aussi mais dans autant de feuille excel
que

de requête. (Si je me fais bien comprendre)
Voila, cela va t -il succiter d'autres réponses ?
A+
Denis

Salut,

"denis le breton" <
| je souhaite exporter une table ou une requête vers excel
| Pour cela j'ai trouvé sur le forum
| DoCmd.OutputTo acOutputQuery, "NomDeTeRequete", acFormatXLS,
| "NomClasseur.xls", True
| ou
| par une macro, faire ceci:
| TransférerFeuilleCalcul
| avec paramètres:
| Exportation
| Microsoft Excel 8-10
| table1
| classeur1.xls
| Oui
| MaFeuille
|
| MaFeuille sera le nom de l'onglet créé dans le classeur classeur1
enregistré


| sous mes documents
|
| Mais ! est il possible de définir la cellule de départ pour l'export
exemple


| en A5 ou colonne A première cellule vide ?


Utilise :
DoCmd.TransferSpreadsheet [typetransfert][, typefeuille], nomtable,
nomfichier[,


contientnomschamps][, étendue]


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/






Avatar
denis le breton
cela m'a l'air bien sympatique
je butte sur une chose, et je n'arrive pas à remettre la main dessus
pour une ressource réseau sous excel je fais :
Réseau = "Pam_cesson2referencielPAMDocuments de référence PAM"
ficsav = Agent & ".xls"
nomsav = Réseau & ficsav
Workbooks.Open Filename:=nomsav, UpdateLinks:=0
mais j'ai un trou pour le répertoire local
style e:2005reptrav

Bonjour,

Voici ce que j'utilise

Set MaDb = CurrentDb
Set rst = MaDb.OpenRecordset("RqteTmp")
Set XL_App = CreateObject("Excel.Application")
Set XL_Classeur = XL_App.Workbooks.Open(NomModele)
Set XL_Feuille = XL_App.Sheets("Feuil1")

'-- Création des en-têtes de
colonnes ------------------------------------------------------------
With XL_Feuille
varColonne = 1
For Each Fld In rst.Fields
.Cells(1, varColonne).Value = Fld.Name
varColonne = varColonne + 1
Next
End With

'-- Copie des
données --------------------------------------------------------------------
--------
If rst.RecordCount <> 0 Then
rst.MoveLast
rst.MoveFirst
Set rngCurr = XL_Feuille.Range(XL_Feuille.Cells(3, 1),
XL_Feuille.Cells(2 + rst.RecordCount, 3))
rngCurr.CopyFromRecordset rst

..
..
End If

Set rngCurr = Nothing
Set XL_Feuille = Nothing
Set XL_Classeur = Nothing
Set XL_App = Nothing
Set rst = Nothing
Set MaDb = Nothing


Gilbert

"denis le breton" a écrit dans le
message de news:
Merci pour la piste 3stone, mais hélas cette méthode ne peut fonctionner
en

export
En effet l'aide sur la méthode précise :
"Étendue Variant facultatif. Expression chaîne qui correspond à une
plage valide de cellules ou au nom d'une plage de la feuille de calcul.
Cet

argument n'est valable que pour une importation. Laissez cet argument
vierge

pour importer la feuille de calcul entière. Lorsque vous effectuez une
exportation vers une feuille de calcul, vous devez laisser cet argument
vierge. Si vous tapez une plage, l'exportation échoue."
Je suis donc dans l'impasse
Mon besoin est le suivant, J'ai plusieurs tables j'ai besoin de récupérer
des données que les requêtes execute sur ces tables (regroupemnet
comptage,

...)
et de construire un doc excel de synthèse reprenant sur une pga plusieurs
résultat de requête. Exemple Vendeur, Equipe, Région, pour les tables
nombre de ventes et CA par vendeur, cumul par Equipe et cumul par région
Les requêtes tournent, l'export aussi mais dans autant de feuille excel
que

de requête. (Si je me fais bien comprendre)
Voila, cela va t -il succiter d'autres réponses ?
A+
Denis

Salut,

"denis le breton" <
| je souhaite exporter une table ou une requête vers excel
| Pour cela j'ai trouvé sur le forum
| DoCmd.OutputTo acOutputQuery, "NomDeTeRequete", acFormatXLS,
| "NomClasseur.xls", True
| ou
| par une macro, faire ceci:
| TransférerFeuilleCalcul
| avec paramètres:
| Exportation
| Microsoft Excel 8-10
| table1
| classeur1.xls
| Oui
| MaFeuille
|
| MaFeuille sera le nom de l'onglet créé dans le classeur classeur1
enregistré


| sous mes documents
|
| Mais ! est il possible de définir la cellule de départ pour l'export
exemple


| en A5 ou colonne A première cellule vide ?


Utilise :
DoCmd.TransferSpreadsheet [typetransfert][, typefeuille], nomtable,
nomfichier[,


contientnomschamps][, étendue]


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/