Copie de feuille excel à partie de access

Fermé
vanessa - 31 juil. 2009 à 11:22
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 3 août 2009 à 11:19
Bonjour,
voila j'ai un petit probleme, j'ai regardé plusieurs forum mais je n'ai pas réussi à trouver la solution à mon probleme

je suis dans access, et j'aimerai copier une feuille "test" d'un classeur vers un nouveau classeur, pour cela j'ai utiliser la fonction copy

Private Function copitest2()
Dim xls As Object
'Dim wadp As Object
Set xls = CreateObject("Excel.Application")

xls.Workbooks.Open "E:\sondages\test1.xls"

xls.Worksheets("test").Copy
xls.Application.Quit
End Function

ceci me copie dans un nouveau classeur jusque la pas de probleme mais le problème vient du faite que je souhaite choisir le nom du fichier et l'emplacment dans lequel s'enregistre cette copie.
avez vous une idee
merci d'avance
A voir également:

3 réponses

personne ne peut m'aider
la je suis vraiment deseperer cela fais presque une semaine que je cherche
aider moi
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
31 juil. 2009 à 15:22
Salut,
Tu aurais du poster dans le forum bureautique ou programmation... C'est pourquoi tu n'as pas eu de réponse.
Alors voyons ce qui t'amène...
Ceci peux peut être te convenir.

Dim fich As String, chemin As String
Sheets("test").Select
Sheets("test").Copy
fich = InputBox("Inscrivez ici le nom que vous voulez attribuer à votre fichier. !!! sans l'extension .xls. notez simplement test par exemple", "Nom du fichier")
chemin = InputBox("Inscrivez ici l'emplacement, complet avec les \ , que vous voulez attribuer à votre fichier. Notez par exemple E:\sondages\ ", "Emplacement")
ActiveWorkbook.SaveAs Filename:= _
chemin & fich & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False


Edit : je n'avais pas vu le rapport avec Access. Donc ce code est à adapter.
Bon courage
0
bonjour merci de votre aide
j'ai essayer ce que vous m'avais proposé cela fonctionne, mais lorsque je le relance une 2eime fois il y a un beug il me met erreur d'execution 91, variable ou objet non défine dans le bloc with
Private Sub copitest2()
Dim xls As Object
Dim fich As String, chemin As String

Set xls = CreateObject("Excel.Application")
xls.Workbooks.Open "E:\sondages\test1.xls"
xls.Worksheets("test").Select
xls.Sheets("test").Copy

fich = InputBox("Inscrivez ici le nom que vous voulez attribuer à votre fichier. !!! sans l'extension .xls. notez simplement test par exemple", "Nom du fichier")
chemin = InputBox("Inscrivez ici l'emplacement, complet avec les \ , que vous voulez attribuer à votre fichier. Notez par exemple E:\sondages\ ", "Emplacement")
ActiveWorkbook.SaveAs Filename:= _
chemin & fich & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False

ActiveWorkbook.Close
xls.Application.Quit
End Sub

il me met en jaune ce que j'ai mis en gras, je pense c'est parce que j'oublie de fermer un truc excel mais je ne sais pas lequel, désolé encore de vous dérangé, mais je débute....
0
bonjour
merci de ton aide ce que tu m'a donné fonctionne une première fois mais la 2eime fois cela plante, il me mat erreur 91, variable objet ou variable du bloc with non definie

Private Sub copitest2()
Dim xls As Object
Dim fich As String, chemin As String

Set xls = CreateObject("Excel.Application")
xls.Workbooks.Open "E:\sondages\test1.xls"
xls.Worksheets("test").Select
xls.Sheets("test").Copy

fich = InputBox("Inscrivez ici le nom que vous voulez attribuer à votre fichier. !!! sans l'extension .xls. notez simplement test par exemple", "Nom du fichier")
chemin = InputBox("Inscrivez ici l'emplacement, complet avec les \ , que vous voulez attribuer à votre fichier. Notez par exemple E:\sondages\ ", "Emplacement")
ActiveWorkbook.SaveAs Filename:= _
chemin & fich & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False

ActiveWorkbook.Close
xls.Application.Quit
End Sub

je pense et que j'oubli de fermer un truc met quoi ?
merci de votre aide et désolé de vous deranger mais je debute
0
bonjour

le code que vous m'avez donner fonctionne bien une fois mais lorsque je le relance il me met erreur 91 la variable objet ou l'instruction du bloc with n'est pas défini

Private Sub copitest2()
Dim xls As Object
Dim fich As String, chemin As String

Set xls = CreateObject("Excel.Application")
xls.Workbooks.Open "E:\sondages\test1.xls"
xls.Worksheets("test").Select
xls.Sheets("test").Copy

fich = InputBox("Inscrivez ici le nom que vous voulez attribuer à votre fichier. !!! sans l'extension .xls. notez simplement test par exemple", "Nom du fichier")
chemin = InputBox("Inscrivez ici l'emplacement, complet avec les \ , que vous voulez attribuer à votre fichier. Notez par exemple E:\sondages\ ", "Emplacement")
ActiveWorkbook.SaveAs Filename:= _
chemin & fich & ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
ActiveWorkbook.Close
xls.Application.Quit
End Sub

je pense cela vient du fais que je n'est pas fermer quelque chose mais quoi ?
le rapport avec access et qu je copie dans un fichier excel des donnees de ma base de donnée dans different onglet
un onglet par entreprise mais apres je souhaite mettre dans un meme fichier excel les donnee d'une entreprise

merci de votre aide car je debute
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743 > vanessa
3 août 2009 à 11:19
Salut,
Je ne pense pas pouvoir t'aider davantage. Essaie de poster cette question sur le forum bureautique ou programmation. Désolé
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
3 août 2009 à 11:09
Salut,
Je ne comprends pas ce qui se passe chez vous. Chez moi ça fonctionne bien ... Même 3 ou 4 fois.
Je pense qu'il y a déjà un souci au début de ta macro. Tu écris :
Set xls = CreateObject("Excel.Application")
xls.Workbooks.Open "C:\.......test.xls"
En fait tu créées un classeur Excel c'est bien ça? Ton classeur test.xls n'existe pas au départ.
0