Copie de feuille excel à partie de access

vanessa -  
pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   -
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
Configuration: Windows XP Internet Explorer 6.0

3 réponses

  1. vanessa
     
    personne ne peut m'aider
    la je suis vraiment deseperer cela fais presque une semaine que je cherche
    aider moi
    0
  2. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    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
    1. vanessa
       
      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
    2. vanessa
       
      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
    3. vanessa
       
      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
      1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773 > vanessa
         
        Salut,
        Je ne pense pas pouvoir t'aider davantage. Essaie de poster cette question sur le forum bureautique ou programmation. Désolé
        0
  3. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    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