IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[VBA-E]Sheets("Feuille1").Copy plante


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 39
    Par défaut [VBA-E]Sheets("Feuille1").Copy plante
    Bonjour,

    J'ai une fonction en vba sous excel qui copie une feuille dans un nouveau classeur excel. Pour cela, j'utilise les lignes de codes suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ' 
    Sheets("Résultats").Activate
    Sheets("Résultats").Copy
    ActiveSheet.Name = nouveau_nom
    ActiveWorkbook.SaveAs nom_result
    L'exécution du code s'arrête après la ligne de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets("Résultats").Copy
    sans qu'aucun message d'erreur n'apparaisse. Ce qui est bizzare c'est que ce problème ne survient pas sur tout les pc.

    Si quelqu'un pouvait m'aider ce serait vraiment cool car là je ne vois vraiment pas ce qui se passe.

    Merci d'avance.

    Thibaut.

  2. #2
    Membre Expert Avatar de Megaxel
    Profil pro
    Inscrit en
    Mai 2003
    Messages
    1 187
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2003
    Messages : 1 187
    Par défaut
    Mais alors, qu'est-ce que tu entends par "l'execution s'arrête"?
    Tu récupères la main, et c'est tout? Il ne renomme pas la feuille active, et il n'enregistre pas le fichier?

  3. #3
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    il y as quoi sur tes feuilles
    - Tableau croisé dynamique ?
    - Graphes ?

    qu'elle est la version d'excel ?


    moi j'ai déjà eu un probléme similaire avec 'un classeur comportant des graphe dynamique créé sous Excel 2000 ...

    Excel 97 se "vautrai" complétement lors de l'utilisation du précédent classeur
    au momen de la copie simultanée de la feuille contenant mon graphe et ses données....



  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 39
    Par défaut
    C'est bien çà Megaxel : le code s'arrête à la ligne qui copie la feuille et puis je récupère la main.
    La feuille contient juste un tableau avec une image mais de toute façon, le problème est le même lorsque j'essaie de copier une feuille vide. Je travaille sous Office 97 et le problème survient sous Office 2003 quoique j'ai déjà eut ce problème sous Office 97 quand la session ouverte n'était pas une session administrateur.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2003
    Messages : 39
    Par défaut
    Personne n'a d'idée ?

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 290
    Par défaut
    Bonjour,
    Ce code enregistre la feuille 1 de ton classeur dans un nouveau classeur (ici .csv, mais tu peux mettres .xls)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Private Sub CommandButton1_Click()
      Dim wbkNew As Workbook
      Dim wbkExisting As Workbook
      Set wbkExisting = ActiveWorkbook
      Set wbkNew = Workbooks.Add
      wbkExisting.Sheets("Feuil1").Copy Before:=wbkNew.Sheets(1)
        Application.ScreenUpdating = False
        Application.DisplayAlerts = False
        wbkNew.Sheets(1).Delete
      wbkExisting.Sheets("Feuil1").Copy Before:=wbkNew.Sheets(1)
      wbkNew.SaveAs "C:\MonClasseur.csv", True
        wbkNew.Close
      Application.ScreenUpdating = True
    End Sub
    jpleroisse

  7. #7
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    J'allais te demander : Tu en fais quoi de ça "Sheets("Résultats").Copy"
    Si tu ne colles ta feuille nulle part, à quoi ça te sert.
    Alors si elle ne doit pas servir, efface ta ligne... Ou alors, prends la solution de leroissejp qui crée une copie la la feuille.
    Cette copie, tu peux la faire dans le classeur lui-même ou dans un autre classeur.

    Précise-nous seulement ce que tu veux faire....

    A+

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo