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 :

Code qui fonctionne dans un classeur mais pas dans un autre


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2004
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 52
    Points : 31
    Points
    31
    Par défaut Code qui fonctionne dans un classeur mais pas dans un autre
    Bonsoir a tous,

    J'ai testé ce code sur un classeur. Il fonctionne parfaitement.
    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
    Sub MAJLogo()
    Dim Feuille As Worksheet
    Dim Dessin As Shape
    Dim Nb As Byte
    Dim Hauteur As Integer
    Dim Largeur As Integer
    Dim Haut As Integer
    Dim Gauche As Integer
    Dim Boucle As Integer
     
    For Each Dessin In Worksheets("Bases").Shapes
        If Dessin.Name = "IMGLogo" Then
            Dessin.Select
            Dessin.CopyPicture
           With Worksheets("Bases").ChartObjects.Add(0, 0, Dessin.Width, Dessin.Height).Chart
           'colle l'image dans un graphique temporaire
              .Paste
            'Sauvegarde au format image, dans le même répertoire que ce classeur.
                .Export ThisWorkbook.Path & "\" & Dessin.Name & ".jpeg", "JPEG"
            End With
            'Supprime le graphique
            Nb = Worksheets("Bases").ChartObjects.Count
            Worksheets("Bases").ChartObjects(Nb).Delete
        End If
    Next Dessin
     
    For Each Feuille In ThisWorkbook.Worksheets
    If Not Feuille.Name = "Bases" Then
        Boucle = 0
        For Each Dessin In Feuille.Shapes
            If InStr(Dessin.Name, "Logo") <> 0 Then
                Boucle = Boucle + 1
                Haut = Dessin.Top
                Gauche = Dessin.Left
                Hauteur = Dessin.Height
                Largeur = Dessin.Width
                Dessin.Delete
                'Insertion d'une nouvelle image
                Feuille.Pictures.Insert(ThisWorkbook.Path & "\IMGLogo.jpeg").Name = "Logo" & Boucle
                'application des anciens parametres à la nouvelle image
                With Feuille.Shapes("Logo" & Boucle)
                .Top = Haut
                .Left = Gauche
                .Height = Hauteur
                .Width = Largeur
                End With
            End If
        Next Dessin
    End If
    Next Feuille
    End Sub
    Je l'ai copié dans un autre classeur.
    Il bloque à la ligne 17
    .paste
    avec l'erreur suivante :
    Erreur d'execution '1004'
    Erreur définie par l'application ou l'objet

    Quelqu'un a-t-il une idée ?

    Merci
    N'oubliez pas le tag Résolu si le problème l'est.
    ;-)

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 617
    Points : 5 912
    Points
    5 912
    Par défaut
    Bonjour,

    Ta feuille ne serait pas protégée?
    MPi²

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2004
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 52
    Points : 31
    Points
    31
    Par défaut
    Bonsoir,

    Merci de t’intéresser à mon problème et désolé pour cette réponse tardive.
    Normalement, la feuille est déprotégée mais je vais creuser de ce coté la.
    N'oubliez pas le tag Résolu si le problème l'est.
    ;-)

Discussions similaires

  1. Réponses: 3
    Dernier message: 04/02/2018, 12h11
  2. [XL-2007] Macro qui fonctionne sur un poste mais pas sur un autre
    Par Runsh63 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/06/2012, 10h24
  3. Code qui fonctionne depuis un module mais pas depuis un workbook
    Par Gualino dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/10/2011, 18h48
  4. Réponses: 0
    Dernier message: 24/06/2010, 15h10
  5. Code qui marche sur un poste mais pas sur un autre
    Par TOSCAN dans le forum Langage
    Réponses: 5
    Dernier message: 11/06/2008, 21h09

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