XL 2019 Insertion image

GUERET

XLDnaute Occasionnel
Bonsoir,
l'euro vient de commencer et, avec l'aide de la communauté, j'ai créé ce tableau qui me pose juste un souci en feuille finale.
J'y ai inséré le logo jpeg de l'euro mais, à chaque modif, ce logo se barre. Je suis allé dans les propriétés de l'image pour la fixer mais...chou blanc. C'est la 1ère fois que je tombe sur problème.
D'avance, merci
https://mon-partage.fr/f/3qAoYzjo/
 

fanch55

XLDnaute Barbatruc
Bonjour,
Quand on insère une image, elle se nomme "Picture n" mais est présentée en français comme "Image n".
Ce sont de faux amis .
Prenez l'habitude de renommer immédiatement une image insérée, vous pourrez par la suite la cibler précisément .
🤗
 

fanch55

XLDnaute Barbatruc
Bonjour,
Avez-vous pensé à modifier également votre code ?

Sub Supprimer_Image()
On Error Resume Next
For s = 1 To Sheets.Count
If Sheets(s).Name = "8ème de finale" Or Sheets(s).Name = "Quart de finale" Or Sheets(s).Name = "Demi-finale" Then
Sheets(s).Select
ActiveSheet.DrawingObjects.Delete
ElseIf Sheets(s).Name = "Finale" Then
Sheets(s).Select
For i = 1 To ActiveSheet.Shapes.Count
If ActiveSheet.Shapes(i).Name <> "Image 2" Then ActiveSheet.Shapes(i).Delete
Next i
End If
Next s
End Sub
 

GUERET

XLDnaute Occasionnel
Bonjour,
Tout d'abord, la VBA ce n'est pas ma tasse de thé donc je fais avec les moyens du bord 😂 😂
Je viens de tester ton code en faisant un copier-coller pour être sûr de ne pas me tromper et j'obtiens le même résultat. J'insère bien l'image dans la feuille "Finale" au dessus du cadre des résultats et, dès que saisis une opération dans la feuille "Phase de groupe", mon image disparaît comme par magie. J'y perds mon latin surtout que c'est la 1ère fois que je tombe sur ce genre de situation.

Cordialement
 

fanch55

XLDnaute Barbatruc
Je traduis le code en le résumant , cela donne :

Si le nom de la feuille est "Finale":
Pour tous les objets de la feuille:
Si le nom de l'objet est différent de "Image 2" alors détruire objet

Dans le cas initial, l' image s'appelait "Picture 2" et était donc détruite .

Dans le cas suivant, vous renommez l' image en "?????" mais elle n'est toujours pas égale à "Image 2", donc elle est détruite.

IL faut donc modifier le code en y précisant le nom de l' image :
If ActiveSheet.Shapes(i).Name <> "nom de ton image" Then ActiveSheet.Shapes(i).Delete
 

GUERET

XLDnaute Occasionnel
Le tri se fait en colonne T à l'affichage des scores et ce de L à S ce qui permet la mise à jour des résultats qui déterminent l'ordre d'arrivée repris ensuite dans la feuille "8ème de finale" d'où l'importance de ce tri. Si je n'ai pas le bon ordre, mon tableau tombe à l'eau. Ce que je ne comprends pas, ça fonctionne bien pour certains groupes et pas pour d'autre et pourtant le code VBA doit être le même à moins qu'il y ait une petite subtilité que je n'ai pas vu.
 

Statistiques des forums

Discussions
312 338
Messages
2 087 398
Membres
103 537
dernier inscrit
alisafred974