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 :

Création de graphe via Macro


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 72
    Points : 42
    Points
    42
    Par défaut Création de graphe via Macro
    Bonjour,

    J'ai enregistré une macro en faisant des actions manuels dans mon classeur Excel.
    Lorsque je relance ma macro j'ai une erreur sur la commande suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Shapes.AddChart.Select
    Est ce un pbme de compatibilité de fonction 2007, 2010 ? Autre ?

  2. #2
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2012
    Messages : 32
    Points : 54
    Points
    54
    Par défaut
    Salut, si tu as utilisé l'enregistreur de macro, vérifies que tu relances bien la macro dans les mêmes "conditions" que la fois précédente. Tu avais peut être sélectionné des données ou autre, quand tu l'avais fait pour la première fois??

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 72
    Points : 42
    Points
    42
    Par défaut
    J'utilise la macro dans les même conditions initiales que lors de l'enregistrement !!

  4. #4
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2012
    Messages : 32
    Points : 54
    Points
    54
    Par défaut
    Tu peux toujours afficher le code ca aidera surement y voir un peu plus clair.

  5. #5
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut heu
    Bonsoir

    Juste une question:
    As tu supprimé le graphe avant de réessayer ta macro??

  6. #6
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 72
    Points : 42
    Points
    42
    Par défaut
    Oui à chaque fois que je vais lancer la macro j'ouvre le document initial sans rien et tel qu'il était quand j'ai enregistré la macro.

    J'ai vu que d'autres avait ce problème avec cette fonction mais je ne vois pas de résolution !!!

  7. #7
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    bonjour

    montre nous le code ?

    on y verra plus clair

  8. #8
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 72
    Points : 42
    Points
    42
    Par défaut
    Voici la partie du code concernée

    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    ...
    
    Sheets("Mafeuille").Select
    
    Range("C1").Select
    ActiveCell.FormulaR1C1 = "toto"
    Range("D1").Select
    ActiveCell.FormulaR1C1 = "tata"
    Range("E1").Select
    ActiveCell.FormulaR1C1 = "titi"
    Range("E2").Select
    
    Range("B21").Select
    ActiveCell.FormulaR1C1 = "TOTAL"
    Range("C21").Select
    ActiveCell.FormulaR1C1 = "=SUM(R[-19]C:R[-6]C)"
    Range("C21").Select
    Selection.AutoFill Destination:=Range("C21:E21"), Type:=xlFillDefault
    Range("C21:E21").Select
    Range("A1").Select
    
    ActiveSheet.Shapes.AddChart.Select <=== Erreur au run erreur 1004 
    ActiveChart.ChartType = xlPie
    ActiveChart.SetSourceData Source:=Range( _
         "'Mafeuille'!$B$1:$E$1;'Mafeuille'!$B$21:$E$21")
    
    ActiveSheet.Shapes("Graphique1").IncrementLeft -241.5
    ActiveSheet.Shapes("Graphique1").IncrementTop 158.25
    ActiveWindow.SmallScroll Down=3
    
    ActiveSheet.Shapes("Graphique1").ScaleWidth 1.066666667, msoFalse, _
         msoScaleFromTopLeft
    ActiveSheet.Shapes("Graphique1").ScaleHeight 1.1840277778, msoFalse, _
         msoScaleFromTopLeft
    
    ActiveChart.SeriesCollection(1).Select
    ActiveChart.SeriesCollection(1).ApplyDataLabels
    ActiveChart.SeriesCollection(1).DataLabels.Select
    Selection.ShowPercentage = True
    ActiveWindow.Zoom = 90
    
    ...

  9. #9
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Tiens essaies celle là
    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
    16
    17
    18
    19
    20
    21
    22
     
    Sub version_courte()
      With Sheets("Mafeuille")
    .Range("C1") = "toto"
    .Range("D1") = "tata"
    .Range("E1") = "titi"
    .Range("B21") = "TOTAL"
    .Range("C21:E21").FormulaR1C1 = "=SUM(R[-19]C:R[-6]C)"
    '"""""""""""""""""""""""""""""""""""""""""
    'maintenant le graphe
    With .Shapes.AddChart
    .Chart.ChartType = xlPie
    .Chart.SetSourceData Source:=Range("'Mafeuille'!$B$21:$E$21")
    .ScaleWidth 1.066666667, msoFalse, msoScaleFromTopLeft
    .ScaleHeight 1.1840277778, msoFalse, msoScaleFromTopLeft
    .Chart.SeriesCollection(1).ApplyDataLabels
    .Chart.SeriesCollection(1).DataLabels.ShowPercentage = True
    End With
    End With
    ActiveWindow.Zoom = 90
    ActiveWindow.SmallScroll Down = 3
    End Sub
    voila je l'ai encore un peu nettoyé.
    au plaisir

  10. #10
    Membre du Club
    Homme Profil pro
    Inscrit en
    Décembre 2009
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 72
    Points : 42
    Points
    42
    Par défaut
    Ca me donne une erreur à la ligne 13 de ton code !!

    "La méthode 'Range' de l'objet '_Global' a échoué"

    J'ai tout de même du mal à comprendre qu'un enregistrement de macro ne fonctionne pas en rejeu !!!

  11. #11
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 379
    Points : 12 075
    Points
    12 075
    Billets dans le blog
    8
    Par défaut re
    Je ne sais pas pourquoi tu as une erreur, moi je ne l'ai pas.
    Vérifies le nom exact de la feuille, et puis l'enregistreur n'enregistre pas tout.

Discussions similaires

  1. [XL-2010] Création d'un graphe avec macro
    Par rouxmasta dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/04/2014, 13h18
  2. [XL-2010] Macro création de graphe suivant les données rentrées
    Par Val14c dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 25/10/2013, 09h50
  3. [XL-2007] Création Tcd via macro
    Par deaqu1 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 04/04/2013, 15h25
  4. création d'un graphe via macro excel
    Par anaylane dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 02/04/2010, 08h08
  5. Tracé de graphes par macro - Création de séries obsolètes
    Par cyrille31 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/12/2008, 11h00

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