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 :

Run-time error '481': Invalid picture [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 74
    Par défaut Run-time error '481': Invalid picture
    Bonjour,
    Lors de l'exécution de ma macro sur Xls 2010, j'ai de temps en temps le message suivant:
    [XL-2010] Run-time error '481': Invalid picture

    J'ai dans un fichier excel un sheet "To Read" avec un bouton "Trésorerie" (CommandButton23) qui est censé m'ouvrir un user form contenant 2 graphiques.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Private Sub CommandButton23_Click()
    ChartNum = "Chart 1"
    ChartNum2 = "Chart 2"
    UserForm1.Show
    End Sub
    Apres avoir cliqué sur ce bouton 23, j'ai le message Run-time error '481': Invalid picture

    En mode debug on s'apercoit que c'est la ligne de show the chart qui me génère cette erreur de temps en temps

    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
     
    Public LeGraph As Chart
    Public LeGraph2 As Chart
    Dim SuiviDerLig As Range  'cellule active de la feuille Match
    Dim SuiviDerLigRow As Double 'Row dela Cellule activede la feuille Match
    Dim Mise As Currency
    Dim Gain As Currency
    Dim MiseDate As Date
    Dim MatchNb As Long
    Dim Combi As String
    Dim RT As String
    Dim SuiviType As String
    Dim ParGp As String
    Dim ParName As String
    Dim Invest As Currency
     
    Option Explicit
    Dim ChartNum As String
    Dim ChartNum2 As String
     
    Private Sub UserForm_Initialize()
    ChartNum = "Chart 1"
    ChartNum2 = "Chart 2"
     
        Me.MonthView1.Value = Date
     
        If IsDate(ActiveCell.Value) Then
          Me.MonthView1.Value = ActiveCell.Value
        End If
     
     
     With ComboBox2
            .AddItem "Damien B."
            .AddItem "Dje B."
            .AddItem "Florent S."
            .AddItem "Maman"
            .AddItem "Manu V."
            .AddItem "Micka H."
            .AddItem "Nico D."
            .AddItem "Olivier B."
            .AddItem "Papa"
            .AddItem "Tche L."
            .AddItem "Thierry B."
            .AddItem "Toto M."
        End With
        'Permet de surligner une valuer par defaut à louvetrtuer su user form
        ComboBox2.ListIndex = 1
        ParName = "Dje B."
     
     
     
    'list box Combi
        With ComboBox1
            .AddItem "C&M"
            .AddItem "0T 6D"
            .AddItem "0T 7D"
            .AddItem "1T 4D"
            .AddItem "1T 5D"
            .AddItem "2T 3D"
            .AddItem "2T 4D"
            .AddItem "2T 5D"
            .AddItem "2T 6D"
            .AddItem "3T 2D"
            .AddItem "3T 3D"
            .AddItem "3T 4D"
            .AddItem "3T 4D"
            .AddItem "3T 7D"
            .AddItem "3T 8D"
            .AddItem "3T 9D"
            .AddItem "4T 1D"
            .AddItem "4T 2D"
            .AddItem "4T 3D"
            .AddItem "4T 6D"
            .AddItem "4T 7D"
            .AddItem "4T 8D"
            .AddItem "5T 5D"
            .AddItem "5T 6D"
            .AddItem "5T 7D"
            .AddItem "6T 4D"
            .AddItem "6T 5D"
            .AddItem "6T 6D"
            .AddItem "6T 7D"
            .AddItem "7T 3D"
            .AddItem "7T 4D"
            .AddItem "7T 5D"
        End With
        'Permet de surligner une valuer par defaut à louvetrtuer su user form
        ComboBox1.ListIndex = 16
        ComboBox1.Value = "4T 3D"
     
     
        'list box Parieur Investissement
        With ListBox5
            .AddItem "Dje"
            .AddItem "Famille"
            .AddItem "TJM"
            .AddItem "G4"
            .AddItem "Autres"
        End With
        'Permet de surligner une valuer par defaut à louvetrtuer su user form
        ListBox5.ListIndex = 0
        ParGp = "Dje"
     
        'list box Parieur
        With ListBox4
            .AddItem "Dje"
            .AddItem "Famille"
            .AddItem "TJM"
            .AddItem "G4"
            .AddItem "Autres"
        End With
        'Permet de surligner une valuer par defaut à louvetrtuer su user form
        ListBox4.ListIndex = 0
        ListBox4.Value = "Dje"
     
        'list box Reel & Test
        With ListBox3
            .AddItem "Reel"
            .AddItem "Test"
        End With
        ListBox3.ListIndex = 0
        RT = "Reel"
     
        'list box Type L1 ou Coupe europe..
        With ListBox1
            .AddItem "L2"
            .AddItem "L1"
            .AddItem "CdF"
            .AddItem "CL"
            .AddItem "C&M"
            .AddItem "Autres"
            .AddItem "Coupe Europe"
        End With
        ListBox1.ListIndex = 0
        SuiviType = "L2"
     
            'list box Nb de Match
        With ListBox2
            .AddItem "1"
            .AddItem "2"
            .AddItem "3"
            .AddItem "4"
            .AddItem "5"
            .AddItem "6"
            .AddItem "7"
            .AddItem "8"
            .AddItem "9"
            .AddItem "10"
            .AddItem "11"
            .AddItem "12"
            .AddItem "13"
            .AddItem "14"
            .AddItem "15"
        End With
    ListBox2.ListIndex = 6
    MatchNb = 7
     
     
    Call Metgraph
     
     
     
    lbl_Exit:
        Exit Sub
     
     
    End Sub
     
    Sub Metgraph()
    Dim NomImage As String
    Dim NomImage2 As String
    'permet d'afficher le graphe de suivi de la caisse et bilan saison en cours à l'ouverture
    Set LeGraph = Worksheets("suivi").ChartObjects(ChartNum).Chart
        LeGraph.Parent.Width = 400
        LeGraph.Parent.Height = 200
    'Save chart as gif
    NomImage = ThisWorkbook.Path & Application.PathSeparator & "temp.gif"
    LeGraph.Export Filename:=NomImage, FilterName:="GIF"
     
    Set LeGraph2 = Worksheets("suivi").ChartObjects(ChartNum2).Chart
    'Save chart as gif
    NomImage2 = ThisWorkbook.Path & Application.PathSeparator & "temp2.gif"
    LeGraph2.Export Filename:=NomImage2, FilterName:="GIF"
     
    '19-Sept-2015: resolution de l image tresorerie
    'LeGraph.Export Filename:=NomImage, FilterName:="GIF"
    'LeGraph2.Export Filename:=NomImage2, FilterName:="GIF"
     
    'LeGraph.Export Filename:=NomImage, FilterName:="JPG"
    'LeGraph2.Export Filename:=NomImage2, FilterName:="JPG"
     
    'Show the chart
    Image1.Picture = LoadPicture(NomImage)
    'Show the chart
    Image2.Picture = LoadPicture(NomImage2)
     
    End Sub
    J'ai trouvé une personne qui rencontra le meme probleme en passant la macro de XL-2007 a XL-2010 mais il n'est pas résolu :-(

    Merci d'avance pour votre retour
    Jerome

  2. #2
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    En mode debug on s'apercoit que c'est la ligne de show the chart qui me génère cette erreur de temps en temps
    Tant qu'à avoir des numéros de ligne, tu aurais pu nous éviter ce charabia.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 74
    Par défaut
    Désolé pour le charabia :-s

    Ca plante a la ligne 192 et 193

    Cdt
    Jerome

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2013
    Messages : 74
    Par défaut
    Hello

    Je viens de voir que j'ai pas clos, je me souviens plus de la solution final.
    Quoiqu'il en soit le code final se trouve ci-dessous, désolé du retard:

    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
     
    Public LeGraph As Chart
    Public LeGraph2 As Chart
    Dim SuiviDerLig As Range  'cellule active de la feuille Match
    Dim SuiviDerLigRow As Double 'Row dela Cellule activede la feuille Match
    Dim Mise As Currency
    Dim Gain As Currency
    Dim MiseDate As Date
    Dim MatchNb As Long
    Dim Combi As String
    Dim RT As String
    Dim SuiviType As String
    Dim ParGp As String
    Dim ParName As String
    Dim Invest As Currency
     
    Option Explicit
    Dim ChartNum As String
    Dim ChartNum2 As String
    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
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    Private Sub UserForm_Initialize()
    ChartNum = "Chart 1"
    ChartNum2 = "Chart 2"
     
        Me.MonthView1.Value = Date
     
        If IsDate(ActiveCell.Value) Then
          Me.MonthView1.Value = ActiveCell.Value
        End If
     
     
     With ComboBox2
            .AddItem "BlanBlan"
            .AddItem "Damien B."
            .AddItem "Dje B."
            .AddItem "Florent S."
            .AddItem "Maman"
            .AddItem "Manu V."
            .AddItem "Micka H."
            .AddItem "Nico D."
            .AddItem "Olivier B."
            .AddItem "Papa"
            .AddItem "Tche L."
            .AddItem "Thierry B."
            .AddItem "Toto M."
            .AddItem "VaVa"
        End With
        'Permet de surligner une valuer par defaut à louvetrtuer su user form
        ComboBox2.ListIndex = 1
        ParName = "Dje B."
     
     
     
    'list box Combi
        With ComboBox1
            .AddItem "C&M"
            .AddItem "0T 6D"
            .AddItem "0T 7D"
            .AddItem "1T 4D"
            .AddItem "1T 5D"
            .AddItem "2T 3D"
            .AddItem "2T 4D"
            .AddItem "2T 5D"
            .AddItem "2T 6D"
            .AddItem "3T 1D"
            .AddItem "3T 2D"
            .AddItem "3T 3D"
            .AddItem "3T 4D"
            .AddItem "3T 7D"
            .AddItem "3T 8D"
            .AddItem "3T 9D"
            .AddItem "4T 1D"
            .AddItem "4T 2D"
            .AddItem "4T 3D"
            .AddItem "4T 6D"
            .AddItem "4T 7D"
            .AddItem "4T 8D"
            .AddItem "5T 5D"
            .AddItem "5T 6D"
            .AddItem "5T 7D"
            .AddItem "6T 4D"
            .AddItem "6T 5D"
            .AddItem "6T 6D"
            .AddItem "6T 7D"
            .AddItem "7T 3D"
            .AddItem "7T 4D"
            .AddItem "7T 5D"
        End With
        'Permet de surligner une valuer par defaut à louvetrtuer su user form
        ComboBox1.ListIndex = 16
        ComboBox1.Value = "4T 3D"
     
     
        'list box Parieur Investissement
        With ListBox5
            .AddItem "Dje"
            .AddItem "Famille"
            .AddItem "TJM"
            .AddItem "G4"
            .AddItem "Autres"
        End With
        'Permet de surligner une valuer par defaut à louvetrtuer su user form
        ListBox5.ListIndex = 0
        ParGp = "Dje"
     
        'list box Parieur
        With ListBox4
            .AddItem "Dje"
            .AddItem "Famille"
            .AddItem "TJM"
            .AddItem "G4"
            .AddItem "Autres"
        End With
        'Permet de surligner une valuer par defaut à louvetrtuer su user form
        ListBox4.ListIndex = 0
        ListBox4.Value = "Dje"
     
        'list box Reel & Test
        With ListBox3
            .AddItem "Reel"
            .AddItem "Test"
        End With
        ListBox3.ListIndex = 0
        RT = "Reel"
     
        'list box Type L1 ou Coupe europe..
        With ListBox1
            .AddItem "L2"
            .AddItem "L1"
            .AddItem "CdF"
            .AddItem "CL"
            .AddItem "C&M"
            .AddItem "Autres"
            .AddItem "Coupe Europe"
        End With
        ListBox1.ListIndex = 0
        SuiviType = "L2"
     
            'list box Nb de Match
        With ListBox2
            .AddItem "1"
            .AddItem "2"
            .AddItem "3"
            .AddItem "4"
            .AddItem "5"
            .AddItem "6"
            .AddItem "7"
            .AddItem "8"
            .AddItem "9"
            .AddItem "10"
            .AddItem "11"
            .AddItem "12"
            .AddItem "13"
            .AddItem "14"
            .AddItem "15"
        End With
    ListBox2.ListIndex = 6
    MatchNb = 7
     
     
    Call Metgraph
     
     
     
    lbl_Exit:
        Exit Sub
     
     
    End Sub

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

Discussions similaires

  1. Run Time error '380' Invalid property value
    Par Chaindog dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 08/06/2011, 09h45
  2. Excel - macro (format conditionnel - run-time error 1004)
    Par Chewi dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 01/09/2006, 19h18
  3. [ Recordset DAO ] run time error
    Par Jeremie_Vi dans le forum VBA Access
    Réponses: 6
    Dernier message: 29/06/2006, 10h28
  4. Réponses: 7
    Dernier message: 04/04/2006, 14h35
  5. Run-time error '5':
    Par zazaraignée dans le forum VB 6 et antérieur
    Réponses: 9
    Dernier message: 16/01/2006, 13h53

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