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 :

Bloquer message application.displayalert=false innefficace


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut Bloquer message application.displayalert=false innefficace
    Bonjour tout le monde petit problème de message d'alertes.

    Lorsque je fais tourner ma macro je crée des graphes sans problème. Il e,st alors possible à l'utilisateur de prendre en compte ou non des valeurs à l'aide d'un togglebutton.

    Lors du rafraichissement des onglets il me marque le message suivant pour chaque graphe : " le nombre maximale de points que vous pouvez utiliser pour un graphique 2D dans une série de données est de 32000. Si vous voulez tracer plus de 32000 points, créer deux séries ou plus."

    Outre le fait que la série ne contienne qu'une 20taine de points maxi, j'utilise un application.displayalert=false. Je ne vois pas comment m'affranchir de ces messages. D'autant qu'une fois le message passé (appui sur OK) les graphes s'affichent correctement.
    Voici un abrégé de mon code à noter que toutes les variables sont instanciées avant :

    Toggle Button sur la feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub O_N4_Click()
        If O_N4.Value = True Then
            O_N4.BackColor = RGB(0, 255, 0)
        Else
            O_N4.BackColor = RGB(255, 0, 0)
        End If
        Call Recalc
    End Sub
    Code pour tracer graphique
    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
    44
    45
    46
    47
    48
    49
    50
     
    Sub Graphic()
     
    Application.DisplayAlerts = False
     
    'Feuille Data
     
        For Each ch In F_Data.ChartObjects
            ch.Delete
        Next ch
     
        i = F_Data.Range("A" & Rows.Count).End(xlUp).Row
        i = i + 2
        i = (F_Data.Cells(i, 1).Top)
     
        'graph 1 
        Set G = F_Data.ChartObjects.Add(0, i, Round(GetSystemMetrics(0) / 4, 0), Round((GetSystemMetrics(0) / 4) / 1.5, 0)).Chart
        G.ChartType = xlXYScatter
        G.HasLegend = False
        G.HasTitle = True
        G.ChartTitle.Text = "Graphe 1"
     
        With G.Axes(xlCategory) 'axe des abscisses
            .HasTitle = True 'définition du titre des abscisses
            .AxisTitle.Characters.Text = "Abscisse"
            .MinimumScale = 0 'valeur minimale
        End With
     
        With G.Axes(xlValue) 'axe des  ordonnées
            .HasTitle = True 'définition du titre des ordonnées
            .AxisTitle.Characters.Text = "Ordonnée"
            .MinimumScale = 0 'valeur minimale
        End With
     
        Set serie = G.SeriesCollection.NewSeries
        serie.XValues = F_Calc_b.Range(F_Calc_b.Cells(2, 4), F_Calc_b.Cells(2, 4).End(xlDown)) 'abscisse
        serie.Values = F_Calc_b.Range(F_Calc_b.Cells(2, 15), F_Calc_b.Cells(2, 15).End(xlDown)) 'ordonnée
        serie.MarkerStyle = xlMarkerStyleCircle
        serie.MarkerSize = 6
     
        Set T = serie.Trendlines.Add
        T.Type = xlPower
        T.DisplayEquation = True
        T.DisplayRSquared = True
     
       'idem pour les autres graph 12 au total
     
                Application.DisplayAlerts = True
     
    End Sub
    Merci de votre aide

  2. #2
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Octobre 2010
    Messages
    338
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Octobre 2010
    Messages : 338
    Par défaut
    Bon j'ai compris : je testais ma macro avec seulement 2 données du coup lorsque j'en enlevais une il n'en restais plus qu'une d'òu l'erreur. Par contre lorsque le nombre de data est supérieur à 1 tout va bien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Application.EnableEvents = False
    Par pierre.watelet dans le forum Macros et VBA Excel
    Réponses: 30
    Dernier message: 10/11/2017, 17h46
  2. Réponses: 16
    Dernier message: 26/07/2011, 17h07
  3. [PPT-2007] Application.DisplayAlerts = False ne fonctionne pas
    Par nick_O dans le forum VBA PowerPoint
    Réponses: 1
    Dernier message: 20/10/2010, 17h11
  4. Intercepter message application externe
    Par Te-Deum dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 22/08/2007, 16h01
  5. [VBA-E DisplayAlerts = False
    Par Chewi dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 19/01/2007, 13h54

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