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 :

Fonction (Pictures.Insert) qui fonctionne mal sur Excel 2007 [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut Fonction (Pictures.Insert) qui fonctionne mal sur Excel 2007
    Bonjour le forum,

    Je dois installer des applicatifs crées sur Excel 2003 sur des Excel 2007 polonais.

    Mon code, dont voici un extrait, fonctionne bien en 2003 mais en 2007 l’image ne s’insert pas sur la cellule sélectionnée,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Test()
        Dim Adresse As String
        Dim CheminImage As String
     
        CheminImage = "C:\ImageRentabilite\pouceplus"
        Adresse = "$D$22"
        Range(Adresse).Select
        ActiveSheet.Pictures.Insert (CheminImage & ".bmp")
    End Sub
    De plus je ne connais pas du tout 2007 et en Polonais, pas facile de s’y retrouver

    Si quelqu’un à une idée du pourquoi, j’en serais ravi.


    Par avance merci
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  2. #2
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Et il est où le "\" qui devrait se trouver entre le chemin et le nom du fichier ? C'est pas pareil en polonais

  3. #3
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    Bonjour Ouskel'nor

    Merci pour ta réponse mais même avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CheminImage = "C:\ImageRentabilite\\pouceplus"
    j'ai toujours le même problème
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  4. #4
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Je n'avais pas compris que le nom de l'image était dans le chemin, autant pour moi et supprime le deuxième "\"
    Teste ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Sub Test()
        Dim CheminImage As String 
        CheminImage = "C:\ImageRentabilite\pouceplus" & ".bmp"
        Range("D22").Select
        ActiveSheet.Pictures.Insert (CheminImage)
    End Sub
    Si l'image pouceplus.bmp se trouve bien dans "C:\ImageRentabilite\", si ta feuille n'est pas protégée en écriture, alors ton image doit s'insérer.
    Tu vérifies "tout ça"
    Bonne journée

  5. #5
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    Toujours Rien

    L'image existe bien mais elle s'insert toujours sur B5
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  6. #6
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    467
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 467
    Points : 493
    Points
    493
    Par défaut
    Bonjour
    ouvre ce lien ICI

    Bonne journée

  7. #7
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    Bonjour Abed H

    Cela ne me donne pas grand chose,

    J'ai essayé avec l'enregistreur de macro, et quand j'insers une image dans excel 2007, je n'ai aucun code d'enregistré.

    la methode

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Pictures.Insert (CheminImage)
    fonctionne mais l'image n'est pas sur la cellule que je selectionne

    avec

    Alors que la Range("D22") est bien selectionnée

    Il doit bien avoir une méthode pour obliger l'image à ce positionner sur la cellule selectionnée.

    Si un des membres pouvait faire un essais sur une version francaise de 2007
    avec mon premier code et me dire ce qu'il en résulte j'en serais content

    Car je ne sais pas si cela bien d'excel 2007 ou de la version polonaise
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  8. #8
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Alors ne sélectionne rien et place ton image là où tu veux qu'elle soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Sub Testx()
    Dim CheminImage As String
        CheminImage = "C:\ImageRentabilite\pouceplus" & ".bmp"
        ActiveSheet.Pictures.Insert (CheminImage)
        ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Top = Range("D22").Top
        ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Left = Range("D22").Left
    End Sub
    Tu dis

  9. #9
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    Merci Ouskel'nor

    Mon code devient


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Test()
        Dim Adresse As String
        Dim CheminImage As String
     
        CheminImage = "C:\ImageRentabilite\pouceplus"
        Adresse = "$D$22"
        ActiveSheet.Pictures.Insert (CheminImage & ".bmp")
        ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Top = Range(Replace(Adresse, "$", "")).Top
        ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Left = Range(Replace(Adresse, "$", "")).Left
    end sub
    Je n'ais plus qu'a adapter tout mon code

    Je ne pensais pas avoir ce type de problème sur 2007 surtout pour un select

    encore merci

    Je ne mets pas encore résolu
    je le ferais aprés un test lorsque j'aurais fait ma mise à jour

    Bonne journée et à plus tard
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  10. #10
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Tu peux te contenter de mettre l'adresse absolue :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
        ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Top = Range("$D$22").Top
    'ou
        ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Left = Range(adresse).Left

  11. #11
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    467
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 467
    Points : 493
    Points
    493
    Par défaut
    Bonjour
    une variante à tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub InserImage()
        Monimage = "C:\Documents and Settings\Farouk\Mes documents\Img01.bmp" '<-- changez pour votre répertoire
        Set Img = ActiveSheet.Pictures.Insert(Monimage)
        With Img
             .Height = ActiveCell.Height
             .Left = ActiveCell.Left
             .Top = ActiveCell.Top
             .Width = ActiveCell.Width
        End With
    End Sub
    Bonne journée

  12. #12
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    De nouveau moi,

    Il semble que les images, malgrés "Depacer sans dimensionner avec les cellules", ne sont pas "accrochées" aux cellules.

    exemple :

    Une image en ligne 38
    Une image en ligne 42
    Avec Lignes 39 à 41 cachées

    lorsque (avec le code) les lignes 39 à 41 sont rendues visibles
    l'image en ligne 42 reste sur la ligne 39 (sa position initiale)

    et ce, semble t-il, de façon aléatoire

    C'est un Bug de 2007???????????
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  13. #13
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Tu as une option sur le déplacement des objets "avec le texte"
    Dans Excel -> Un clic droit sur l'objet -> Format de l'image

  14. #14
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    Oui Ouskel'nor,

    J'ai bien "Déplacer sans dimensionner avec les cellules"

    Et c'est cela que je ne comprend pas

    Et je n'ais aucun problème avec 2003
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  15. #15
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Je n'ai plus de réponse (et je n'ai pas Excel 2007) Essaie d'enregistrer, de fermer Excel et de redimensionner les cellules... A tout hasard, des fois "il" fait bien les choses

  16. #16
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    Je jongle de poste en poste et le fichier est sans arrêts refait
    (c'est un outil d'analyse de rentabilité d'affaire)
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  17. #17
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    As-tu testé avec un autre objet, il m'étonnerait bien qu'Excel 2007 ait encore ce comportement après deux ans d'ancienneté...

  18. #18
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    Non et malheureusement je n’aurais pas le temps aujourd’hui et je rentre en France demain, et comme je n’ai pas 2007 à la boite je l’ai « insebab ».

    Comme c’est aléatoire je les installe en état, c’est juste une question de finition.
    Même si cela M’em…. Je n’ai pas le choix.

    Une précision quand je le fait sans passer par le code (par ajustement des hauteurs de lignes) ça marche, en tout cas ça à l’air, c’est avec VBA que j’ai le soucis.

    Bonne soirée et merci, si j’ai la possibilité de tester autre chose, je tiendrais le forum au courant.
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

  19. #19
    Membre confirmé
    Inscrit en
    Janvier 2008
    Messages
    467
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 467
    Points : 493
    Points
    493
    Par défaut
    Bonsoir Jean-Pierre49
    surement tu trouveras ton bonheur avec cet exemple, tester avec excel 2007 français et qui fonctionne très bien.
    sélectionne d'abord la cellule dans laquelle tu veux insérer l'image puis lance le prog.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub ImportImg()
    Dim Image As Picture
       nomimage = "C:\Abed.bmp" '<-- changez pour votre répertoire
       Set Image = ActiveSheet.Pictures.Insert(nomimage)
         With Image.ShapeRange
                   .LockAspectRatio = msoFalse
                   .Left = ActiveCell.Left
                   .Top = ActiveCell.Top
                   .Height = ActiveCell.Height
                   .Width = ActiveCell.Width
        End With
    End Sub
    Bonne soirée.

  20. #20
    Membre chevronné Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Points : 2 056
    Points
    2 056
    Par défaut
    Bonjour a tout Le Forum,

    Je reviens vers vous pour vous expliquer comment j’ai résolu le problème avant de quitter nos amis de Pologne.

    Avant, à quoi sert l’applicatif.

    C’est un outil qui donne les dépenses et les prix de revient projetés des affaires en cours ou terminées pour les sociétés de groupe (4, dont une polonaise vous aurez compris).

    Ces affaires sont décomposées en un dossier technique, lequel est différent pour chaque affaire.
    Chaque rang de dossier technique est décomposé en une gamme et une nomenclature
    La gamme est variable pour chaque rang, la nomenclature aussi.
    Toutes les données sont stockées dans notre GPAO.

    L’applicatif recrée l’arborescence du dossier technique dans une feuille Excel.
    A chaque fois que l’on demande une affaire. La page est détruite (Delete), une vierge est affichée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
        Application.DisplayAlerts = False
            Sheets("SortieRentabilite").Select
            ActiveWindow.SelectedSheets.Delete
            Sheets("ModelSortieRentabilite").Copy Before:=Sheets(1)
            Sheets("ModelSortieRentabilite (2)").Name = "SortieRentabilite"
     
            Range("K2").Value = Dossier
        Application.DisplayAlerts = True

    Les requêtes nécessaires pour l’analyse sont effectuées dans les bases des sociétés respectives.

    Lorsque la sortie est établie.
    Tous les tableaux de décomposition sont établis avec le cosmétique qui va bien.
    Et un plan est aussi établi, il indique :
    La position des images
    Les n° des lignes qui doivent être visibles ou non visibles lors du clique sur celle-ci
    Le libellé de l’image (G et ou N) ou totalement vide (VV)
    L’indice de l’image.

    Aussi quand on clique sur une image une procédure est déclanchée soit Fermeture ou Ouverture des rangs.
    L’image change (plus devient moins et vice et versa)
    L’indice de l’image est récupéré et le plan indique à la procédure ce qu’elle doit faire.
    (ci-joint exemple)

    Mon problème était que lorsque j’ouvrais les rangs des images ne suivaient pas les cellules sur lesquelles elles étaient positionnées. Malgré le déplacer sans dimensionner avec les cellules sur 2007

    Pour remédier à cela.
    A chaque ouverture de rang, les lignes nécessaires à la visualisation des valeurs du rang concerné sont rendues visibles.
    J’importe les images (qui sont nommée : racine + indice), peut importe leurs positions.
    Je boucle sur toutes les images de la feuille, j’identifie les noms des images (racine et indice) que le code à besoins pour l’ouverture ou la fermeture des rangs.
    Je stocke nom et racine dans un CSV.
    Je supprime les images.
    Je requête sur ce CSV avec tri sur l’indice.
    Et je réintègre les images à la place ou elles doivent être.

    Seule la procédure d’ouverture causait problème, la fermeture supprime les images dont elle n’a plus besoins.

    Le code est brut de forge.

    A moi de l’optimiser mais avant de partir il fallait que ça marche.
    Je vous l’envois tel quel.

    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
    Sub RepositionnementImages()
                                Dim Donnees                         As DAO.Database
                                Dim Creation                        As Object
                                Dim Enregistrement                  As String
                                Dim Chemin                          As String
                                Dim Appli                           As Object
     
                                Dim TexteRequete                    As String
                                Dim Requete                         As Recordset
     
                                Dim ImageInseree                    As Shape
                                Dim CompA                           As Integer
     
                                Dim Adresse                         As String
                                Dim Image                           As String
     
        Set Appli = CreateObject("Scripting.FileSystemObject")
        Chemin = "C:\ImageRentabilite\"
     
        Set Donnees = DAO.OpenDatabase(Chemin, False, False, "Text;Database=" & Chemin)
     
        Set Creation = Appli.CreateTextFile(Chemin & "TempImageInseree.csv", True)
        Creation.Write "Champs1;Champs2" & vbCrLf
     
        For Each ImageInseree In ActiveSheet.Shapes
            If InStr(ImageInseree.Name, "_") > 0 Then
                Select Case Left(ImageInseree.Name, InStr(ImageInseree.Name, "_") - 1)
                    Case "moinsGN", "moinsGV", "moinsVN", "moinsVV", "plusGN", "plusGV", "plusVN", "plusVV"
                    Creation.Write ImageInseree.Name & ";" & Replace(ImageInseree.Name, Left(ImageInseree.Name, InStr(ImageInseree.Name, "_")), "") & vbCrLf
                    ImageInseree.Delete
                End Select
            End If
        Next ImageInseree
        DoEvents
     
        Creation.Close
        Set Creation = Nothing
     
        TexteRequete = "SELECT Champs1, Champs2 FROM [TempImageInseree.csv] ORDER BY Champs2"
        Set Requete = Donnees.OpenRecordset(TexteRequete, DAO.dbOpenSnapshot)
        Do While Not (Requete.EOF)
            For CompA = 3 To Sheets("EnGam").Range("A65536").End(xlUp).Row
                If Sheets("EnGam").Range("AD" & CompA).Value = CLng(Requete.Fields(1).Value) Then
                    Adresse = Sheets("EnGam").Range("AA" & CompA).Value
                    Image = Sheets("EnGam").Range("Z" & CompA).Value & Sheets("EnGam").Range("Y" & CompA).Value
     
                    With ActiveSheet.Pictures.Insert(Chemin & Left(Requete.Fields(0).Value, InStr(Requete.Fields(0).Value, "_") - 1) & ".bmp")
                        .Name = Requete.Fields(0).Value 
                        .PrintObject = False
                        .ShapeRange.PictureFormat.TransparencyColor = RGB(233, 231, 219)
                        If InStr(Requete.Fields(0).Value, "plus") > 0 Then
                            If Image <> "VV" Then .OnAction = "ProOuverture"
                        Else
                            If Image <> "VV" Then .OnAction = "ProFermeture"
                        End If
                    End With
                    ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Top = Range(Replace(Adresse, "$", "")).Top
                    ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Left = Range(Replace(Adresse, "$", "")).Left
                End If
            Next CompA
            Requete.MoveNext
        Loop
     
        Requete.Close
        Set Requete = Nothing
    End Sub
    Cette application fonctionne depuis Févier 2007 pour 3 sociétés en version 2003 sans aucun problème, je n’aurais jamais pensé qu’il puisse en avoir avec 2007.

    J’avais plus de doute sur d’autres applications.
    Mis à part des problèmes de langues style Somma pour Total ou « je ne sait plus quoi » pour Bureau dans Documents and Settings et autres.
    Elles ne m’ont pas causés plus de problème que ça.

    Et c’est pour cela que je finissait par celle la.

    Je remercie encore le forum pour son aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Top  
    ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Left
    Je coche sur cette discussion, sachant que le problème du déplacement des images sur 2007 ne l’est pas.
    Images attachées Images attachées  
    Jean-Pierre Pensez à Voter pour les réponses qui vous ont aidés, d'avance merci
    ---------Et n'oubliez pas de mettre : ..quand c'est le cas !---------

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

Discussions similaires

  1. [XL-2003] Macro qui ne Fonctionne PAS sur Excel 2003 mais Fonctionne sur Excel 2010
    Par CedResma34 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 17/01/2014, 10h05
  2. [AC-2007] After Insert qui fonctionne mal une fois sur deux
    Par DamKre dans le forum IHM
    Réponses: 4
    Dernier message: 27/12/2011, 10h29
  3. Pb d'insertion d'image avec une macro sur Excel 2007
    Par tigrou42 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 30/05/2007, 00h48
  4. Démo qui fonctionne mal sur Mac OS
    Par shams dans le forum Ogre
    Réponses: 12
    Dernier message: 22/05/2007, 18h34
  5. un DELETE qui fonctionne mal
    Par HULK dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 06/02/2006, 18h59

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