Voila je rencontre un probleme concernant l'exportation et le
"formatage" du fichier extrait dans excel.
Hypothese :
ACCESS : Une table contenant deux colonne une avec un EAN13 et l autre
une quantit=E9, le nombre de ligne peut etre variable de 1 ligne a 100
lignes.
J'ai cr=E9=E9 ensuite un module qui permet de faire l'export vers excel
avec un formatage pr=E9cis sur le fichier excel.
Contrainte :
Le format xls doit :
* Toujours extraire dans le meme fichier xls ( il faut donc effacer ce
qu il y a dans le fichier avant nouvelle extration)
* Ne pas contenir l'entete des colonnes extraites via Access
* Afficher sur la premiere colonne sur les 2 premieres lignes deux
codes ( toujours les memes)
* Mettre =E0 la suite des 2 premieres lignes les valeurs des colonnes
presentes ds la table ACCESS ( EAN 13 + Qte)
* En derniere position mettre un code ( toujours le meme)
Exemple :
Table ACCESS :
A B
EAN13 Qt=E9
955544455555 10
9782070357239 20
9782070357239 100
Le fichier xls devrait avoir ce format :
A B
3012600500000
3025592566908
955544455555 10
9782070357239 20
9782070357239 100
9999999999999
Probleme :
Voici ce que j ai fait
Private Sub Commande5_Click()
Dim oAppExcel As Excel.Application
Dim oClasseur As Excel.Workbook
Dim oFeuille As Excel.Worksheet
Dim oCell As Excel.Range
Dim i As Integer
'Exporter
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9,
"Clients", "\\Srvdatamal\G_STOCKS\commun\Gestion des appros
\Appro_Gallimard\Commande_jour_internet.xls", True
'Ouvre le fichier excel
Set oAppExcel =3D CreateObject("Excel.Application")
Set oClasseur =3D oAppExcel.Workbooks.Open("\\Srvdatamal\G_STOCKS
\commun\Gestion des appros\Appro_Gallimard
\Commande_jour_internet.xls")
'S=E9lectionne la premi=E8re feuille
Set oFeuille =3D oClasseur.Worksheets(1)
'Ferme Excel
oClasseur.Save
oClasseur.Close
oAppExcel.Quit
Set oAppExcel =3D Nothing
Set oClasseur =3D Nothing
End Sub
Mais cela ne fonctionne pas correctement.
1=B0 A chaque fois que je lance le module, j ai n est plus d acces au
fichier xls ( il reste en lecture seule je crois)
2=B0 Comme j extrait toujours dans le meme fichier, les chiffres se
mettent a la suite au lieu de mettre =E0 jour.
3 =B0 le dernier code ( 9999999999999) se repete a chaque extration, au
final je me retrouve avec plein de 9999999999999.
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
Pierre CFI [mvp]
bonjour c'est createobject qui ouvre excel et le ferme pas si tu utilises la ref micrisoft excel... tu peux attaquer directement Set oClasseur = Workbooks.Open("f:excel97reqprod.xls")
-- Pierre MVP Access *************************************** Conseils MPFA: http://www.mpfa.info/ ********************************************************* "Malach" a écrit dans le message de news:
Bonjour à tous ,
Voila je rencontre un probleme concernant l'exportation et le "formatage" du fichier extrait dans excel.
Hypothese : ACCESS : Une table contenant deux colonne une avec un EAN13 et l autre une quantité, le nombre de ligne peut etre variable de 1 ligne a 100 lignes. J'ai créé ensuite un module qui permet de faire l'export vers excel avec un formatage précis sur le fichier excel.
Contrainte : Le format xls doit : * Toujours extraire dans le meme fichier xls ( il faut donc effacer ce qu il y a dans le fichier avant nouvelle extration) * Ne pas contenir l'entete des colonnes extraites via Access * Afficher sur la premiere colonne sur les 2 premieres lignes deux codes ( toujours les memes) * Mettre à la suite des 2 premieres lignes les valeurs des colonnes presentes ds la table ACCESS ( EAN 13 + Qte) * En derniere position mettre un code ( toujours le meme)
Exemple : Table ACCESS : A B EAN13 Qté 955544455555 10 9782070357239 20 9782070357239 100
Le fichier xls devrait avoir ce format : A B 3012600500000 3025592566908 955544455555 10 9782070357239 20 9782070357239 100 9999999999999
Probleme : Voici ce que j ai fait
Private Sub Commande5_Click() Dim oAppExcel As Excel.Application Dim oClasseur As Excel.Workbook Dim oFeuille As Excel.Worksheet Dim oCell As Excel.Range Dim i As Integer
'Exporter DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Clients", "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel Set oAppExcel = CreateObject("Excel.Application") Set oClasseur = oAppExcel.Workbooks.Open("SrvdatamalG_STOCKS communGestion des approsAppro_Gallimard Commande_jour_internet.xls")
'Sélectionne la première feuille Set oFeuille = oClasseur.Worksheets(1)
'Ferme Excel oClasseur.Save oClasseur.Close oAppExcel.Quit Set oAppExcel = Nothing Set oClasseur = Nothing
End Sub
Mais cela ne fonctionne pas correctement. 1° A chaque fois que je lance le module, j ai n est plus d acces au fichier xls ( il reste en lecture seule je crois) 2° Comme j extrait toujours dans le meme fichier, les chiffres se mettent a la suite au lieu de mettre à jour. 3 ° le dernier code ( 9999999999999) se repete a chaque extration, au final je me retrouve avec plein de 9999999999999.
Merci d avance pour votre aide.
bonjour
c'est createobject qui ouvre excel et le ferme pas
si tu utilises la ref micrisoft excel... tu peux attaquer directement
Set oClasseur = Workbooks.Open("f:excel97reqprod.xls")
--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
"Malach" <malach@free.fr> a écrit dans le message de news:
1173969958.239029.201310@e65g2000hsc.googlegroups.com...
Bonjour à tous ,
Voila je rencontre un probleme concernant l'exportation et le
"formatage" du fichier extrait dans excel.
Hypothese :
ACCESS : Une table contenant deux colonne une avec un EAN13 et l autre
une quantité, le nombre de ligne peut etre variable de 1 ligne a 100
lignes.
J'ai créé ensuite un module qui permet de faire l'export vers excel
avec un formatage précis sur le fichier excel.
Contrainte :
Le format xls doit :
* Toujours extraire dans le meme fichier xls ( il faut donc effacer ce
qu il y a dans le fichier avant nouvelle extration)
* Ne pas contenir l'entete des colonnes extraites via Access
* Afficher sur la premiere colonne sur les 2 premieres lignes deux
codes ( toujours les memes)
* Mettre à la suite des 2 premieres lignes les valeurs des colonnes
presentes ds la table ACCESS ( EAN 13 + Qte)
* En derniere position mettre un code ( toujours le meme)
Exemple :
Table ACCESS :
A B
EAN13 Qté
955544455555 10
9782070357239 20
9782070357239 100
Le fichier xls devrait avoir ce format :
A B
3012600500000
3025592566908
955544455555 10
9782070357239 20
9782070357239 100
9999999999999
Probleme :
Voici ce que j ai fait
Private Sub Commande5_Click()
Dim oAppExcel As Excel.Application
Dim oClasseur As Excel.Workbook
Dim oFeuille As Excel.Worksheet
Dim oCell As Excel.Range
Dim i As Integer
'Exporter
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9,
"Clients", "\SrvdatamalG_STOCKScommunGestion des appros
Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel
Set oAppExcel = CreateObject("Excel.Application")
Set oClasseur = oAppExcel.Workbooks.Open("\SrvdatamalG_STOCKS
communGestion des approsAppro_Gallimard
Commande_jour_internet.xls")
'Sélectionne la première feuille
Set oFeuille = oClasseur.Worksheets(1)
'Ferme Excel
oClasseur.Save
oClasseur.Close
oAppExcel.Quit
Set oAppExcel = Nothing
Set oClasseur = Nothing
End Sub
Mais cela ne fonctionne pas correctement.
1° A chaque fois que je lance le module, j ai n est plus d acces au
fichier xls ( il reste en lecture seule je crois)
2° Comme j extrait toujours dans le meme fichier, les chiffres se
mettent a la suite au lieu de mettre à jour.
3 ° le dernier code ( 9999999999999) se repete a chaque extration, au
final je me retrouve avec plein de 9999999999999.
bonjour c'est createobject qui ouvre excel et le ferme pas si tu utilises la ref micrisoft excel... tu peux attaquer directement Set oClasseur = Workbooks.Open("f:excel97reqprod.xls")
-- Pierre MVP Access *************************************** Conseils MPFA: http://www.mpfa.info/ ********************************************************* "Malach" a écrit dans le message de news:
Bonjour à tous ,
Voila je rencontre un probleme concernant l'exportation et le "formatage" du fichier extrait dans excel.
Hypothese : ACCESS : Une table contenant deux colonne une avec un EAN13 et l autre une quantité, le nombre de ligne peut etre variable de 1 ligne a 100 lignes. J'ai créé ensuite un module qui permet de faire l'export vers excel avec un formatage précis sur le fichier excel.
Contrainte : Le format xls doit : * Toujours extraire dans le meme fichier xls ( il faut donc effacer ce qu il y a dans le fichier avant nouvelle extration) * Ne pas contenir l'entete des colonnes extraites via Access * Afficher sur la premiere colonne sur les 2 premieres lignes deux codes ( toujours les memes) * Mettre à la suite des 2 premieres lignes les valeurs des colonnes presentes ds la table ACCESS ( EAN 13 + Qte) * En derniere position mettre un code ( toujours le meme)
Exemple : Table ACCESS : A B EAN13 Qté 955544455555 10 9782070357239 20 9782070357239 100
Le fichier xls devrait avoir ce format : A B 3012600500000 3025592566908 955544455555 10 9782070357239 20 9782070357239 100 9999999999999
Probleme : Voici ce que j ai fait
Private Sub Commande5_Click() Dim oAppExcel As Excel.Application Dim oClasseur As Excel.Workbook Dim oFeuille As Excel.Worksheet Dim oCell As Excel.Range Dim i As Integer
'Exporter DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Clients", "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel Set oAppExcel = CreateObject("Excel.Application") Set oClasseur = oAppExcel.Workbooks.Open("SrvdatamalG_STOCKS communGestion des approsAppro_Gallimard Commande_jour_internet.xls")
'Sélectionne la première feuille Set oFeuille = oClasseur.Worksheets(1)
'Ferme Excel oClasseur.Save oClasseur.Close oAppExcel.Quit Set oAppExcel = Nothing Set oClasseur = Nothing
End Sub
Mais cela ne fonctionne pas correctement. 1° A chaque fois que je lance le module, j ai n est plus d acces au fichier xls ( il reste en lecture seule je crois) 2° Comme j extrait toujours dans le meme fichier, les chiffres se mettent a la suite au lieu de mettre à jour. 3 ° le dernier code ( 9999999999999) se repete a chaque extration, au final je me retrouve avec plein de 9999999999999.
Merci d avance pour votre aide.
Malach
Bonjour,
Personne pour m'aider pour les problemes 2 et 3 SVP Merci
Bonjour,
Personne pour m'aider pour les problemes 2 et 3 SVP
Merci
Personne pour m'aider pour les problemes 2 et 3 SVP Merci
Bonjour,
Je me permet un petit "Bump" , merci
Fabien
Bonjour Malach, Pour le point 2 Tu ne peut pas effacer le fichier avant de le re-crééer ?
'On efface le fichier s'il existe On error goto resume next (Je sais c'est pas terrible mais pour tester ....) Kill "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls"
'Exporter DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Clients", "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel Set oAppExcel = CreateObject("Excel.Application") Set oClasseur = oAppExcel.Workbooks.Open("SrvdatamalG_STOCKS communGestion des approsAppro_Gallimard Commande_jour_internet.xls")
Qu'en penses tu ?
@+ Fabien
On 16 mar, 09:16, "Malach" wrote:
Bonjour,
Personne pour m'aider pour les problemes 2 et 3 SVP Merci
Bonjour,
Je me permet un petit "Bump" , merci
Bonjour Malach,
Pour le point 2 Tu ne peut pas effacer le fichier avant de le re-crééer ?
'On efface le fichier s'il existe
On error goto resume next (Je sais c'est pas terrible mais pour tester
....)
Kill "\SrvdatamalG_STOCKScommunGestion des appros
Appro_GallimardCommande_jour_internet.xls"
'Exporter
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9,
"Clients", "\SrvdatamalG_STOCKScommunGestion des appros
Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel
Set oAppExcel = CreateObject("Excel.Application")
Set oClasseur = oAppExcel.Workbooks.Open("\SrvdatamalG_STOCKS
communGestion des approsAppro_Gallimard
Commande_jour_internet.xls")
Qu'en penses tu ?
@+
Fabien
On 16 mar, 09:16, "Malach" <mal...@free.fr> wrote:
Bonjour,
Personne pour m'aider pour les problemes 2 et 3 SVP
Merci
Bonjour Malach, Pour le point 2 Tu ne peut pas effacer le fichier avant de le re-crééer ?
'On efface le fichier s'il existe On error goto resume next (Je sais c'est pas terrible mais pour tester ....) Kill "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls"
'Exporter DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Clients", "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel Set oAppExcel = CreateObject("Excel.Application") Set oClasseur = oAppExcel.Workbooks.Open("SrvdatamalG_STOCKS communGestion des approsAppro_Gallimard Commande_jour_internet.xls")
Qu'en penses tu ?
@+ Fabien
On 16 mar, 09:16, "Malach" wrote:
Bonjour,
Personne pour m'aider pour les problemes 2 et 3 SVP Merci
Bonjour,
Je me permet un petit "Bump" , merci
Fabien
Salut, Et qu'est ce qui ne fonctionne pas stp ? Le kill ?
Bonjour Malach, Pour le point 2 Tu ne peut pas effacer le fichier avant de le re-crééer ?
'On efface le fichier s'il existe On error goto resume next (Je sais c'est pas terrible mais pour tester ....) Kill "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls"
'Exporter DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Clients", "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel Set oAppExcel = CreateObject("Excel.Application") Set oClasseur = oAppExcel.Workbooks.Open("SrvdatamalG_STOCKS communGestion des approsAppro_Gallimard Commande_jour_internet.xls")
Qu'en penses tu ?
@+ Fabien
On 16 mar, 09:16, "Malach" wrote:
Bonjour,
Personne pour m'aider pour les problemes 2 et 3 SVP Merci
Bonjour,
Je me permet un petit "Bump" , merci
Salut,
Et qu'est ce qui ne fonctionne pas stp ?
Le kill ?
Bonjour Malach,
Pour le point 2 Tu ne peut pas effacer le fichier avant de le re-crééer ?
'On efface le fichier s'il existe
On error goto resume next (Je sais c'est pas terrible mais pour
tester ....)
Kill "\SrvdatamalG_STOCKScommunGestion des appros
Appro_GallimardCommande_jour_internet.xls"
'Exporter
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9,
"Clients", "\SrvdatamalG_STOCKScommunGestion des appros
Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel
Set oAppExcel = CreateObject("Excel.Application")
Set oClasseur = oAppExcel.Workbooks.Open("\SrvdatamalG_STOCKS
communGestion des approsAppro_Gallimard
Commande_jour_internet.xls")
Qu'en penses tu ?
@+
Fabien
On 16 mar, 09:16, "Malach" <mal...@free.fr> wrote:
Bonjour,
Personne pour m'aider pour les problemes 2 et 3 SVP
Merci
Salut, Et qu'est ce qui ne fonctionne pas stp ? Le kill ?
Bonjour Malach, Pour le point 2 Tu ne peut pas effacer le fichier avant de le re-crééer ?
'On efface le fichier s'il existe On error goto resume next (Je sais c'est pas terrible mais pour tester ....) Kill "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls"
'Exporter DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Clients", "SrvdatamalG_STOCKScommunGestion des appros Appro_GallimardCommande_jour_internet.xls", True
'Ouvre le fichier excel Set oAppExcel = CreateObject("Excel.Application") Set oClasseur = oAppExcel.Workbooks.Open("SrvdatamalG_STOCKS communGestion des approsAppro_Gallimard Commande_jour_internet.xls")
Qu'en penses tu ?
@+ Fabien
On 16 mar, 09:16, "Malach" wrote:
Bonjour,
Personne pour m'aider pour les problemes 2 et 3 SVP Merci