Erreur d'exécution 481 image incorrecte, VBA graphique

Bonsoir à tous,

Je suis un peu perdu! pourtant je pensais que c'était simple mais je ne le vois pas. J'ai un User forme ( UserForm1) dans lequel je voudrais afficher un graphique qui se trouve à côté de mon tableau et ma feuille s'appelle "Calendrier" de mon classeur Excel,

Mais chaque fois que je ferme et réouvre mon classeur, et que je clique sur visualiser (bouton de macro) il me dit "erreur d'exécution 481, image incorrecte!". Mais si je fais défiler vers la droite là je vois mon graphique dans userform.

Et par la suite si c'est possible, dans les petites cellules de la semaines introduire uniquement ces abréviations pour les absences ( CT, V, P, CM, D ,N, ADJ, CDJ) j'ai essayé avec la validation des données "alerte erreur" mais ça n'a pas fonctionné.

Merci d'avance.

14calendrier.xlsm (95.13 Ko)

Bonjour Thibet,

En retour, le fichier modifié pour ta demande. Ne pas utiliser Gif, format utilisé pour les images animés.

Voir les commentaires sur les macros.

Les petites cellules de la semaine ont été formatées. Indiquez l'abréviation ou la choisir par la liste déroulante qui s'y affiche.

Bonsoir X Cellus, Bonsoir le Forum,

C'est parfait! Mais j'ai un petit soucis quand j'applique le code et les autres dans mon classeur tel que tu l'as modifié il me donne quasi le même message d'erreur , au niveau du macro "Call copie_images." en jaune

Sub Graphique()
Call copie_images
UserForm1.Show 0
End Sub

Je me demandai s'il y a le moyen dans le graphique du userform d'enlever le blanc qui se trouve derrière les coins arrondis. Dans "Modules" copieimages

chrt.Border.LineStyle = 1 et dans la propriété de l'image du userform j'ai essayé plusieurs possibilités mais sans succès

image

Merci

A+

Thibet

Bonjour Thibet,

Tu utilises une forme de graphique prédéfini et le copyPicture génére toujours une forme carré.

Il prend la hauteur maximum et la largeur maximum pour englober l'image. Donc des bords arrondis laisseront un vide (un blanc donc).

Je tenterais en soirée, un graphique toujours carré mais sans bordure. Et j'ajouterais par-dessus lui une forme transparente avec bords rouges arrondis.

As-tu bien corrigé le code dans l'USF, mis en commentaire.

Private Sub UserForm_Initialize()
  'Set LeGraph = Worksheets("Calendrier").ChartObjects(1).Chart
  NomImage = ThisWorkbook.Path & Application.PathSeparator & "temp.jpg"
  'LeGraph.Export Filename:=NomImage, FilterName:="jpg"
  Image1.Picture = LoadPicture(NomImage)
End Sub

Est-ce un chemin réseau où est sauvé le graphe?

Bonjour X Cellus,

Oui les modification sont bien appliquées dans mon classeur à moi, mais toujours le même résultat alors (si tu te souviens j'avais écris quand je défile vers la droite et que je reviens sans problème que ça soit extension "gif, jpg ou bmp " ça fonctionne très bien de ce faite j'ai ajouté appel aux macros next et previuous en debout du macro et ça fonctionne.

Sub Graphique ()
Call NextMonth
Call PreviousMonth
UserForm1.Show 0
End Sub

(*) Par contre dans le classeur "Calendrier_XCellus.xlsm" quand je change les années les cellules ne se libèrent pas et pour les cellules j'utilise un code Ucase et que quand je supprime une semaine ou un mois il est très très lent, le boucle ralenti car 12 mois de cellules.

Merci

Thibet

bonjour,

on peut aussi utiliser l'outil "Camera". Avec celui on crée un "shape", qu'on peut cacher & montrer où on veut. Ce caméra est un copie identique d'une plage, donc il n'y a pas ce problèmes avec les coins, si les cellules derrière le graph ont le bon couleur.

La macro est activé par votre bouton "Visualiser"

Bonsoir BsAlv, Bonsoir XCellus, Bonsoir le forum,

Effectivement c'est une solution. Merci BsAlv.

Mais pour moi le plus important c'est quand je change les années avec la liste déroulante qui se trouve dans A2 les cellules ne se libèrent pas et aussi pour les cellules j'utilise un code Ucase et que quand je supprime une semaine ou un mois il est très très lent, le boucle ralenti car 12 mois de cellules.

Merci

Thibet

A nouveau,

Comme inscrit vers 13h. J'ai enlevé la forme arrondi au graphique.

Il suffit de décocher dans la partie Format de celui-ci (au bas de la fenêtre) la coche Coins arrondis. Le graphique devient carré.

Mais la bordure rouge, elle aussi, devient carrée puisqu'elle suit les bords de la forme. On l'enlève alors par aucune bordure.

On insère une forme Rectangle arrondi à placer au-dessus du graphique (propriété placer devant) puis on ôte la couleur de fond (aucun remplissage).

Mais on peut créer si souhait (et avec un peu de temps) toutes sortes de bordures (personnalisées).

Et on lui donne une bordure de couleur rouge. Ensuite on groupe le Graphique et le Rectangle en les sélectionnant ensemble puis clic droit (Grouper).

On nomme ce groupe Grafik et dans le code VBA on utilise ce nom pour le cibler.

Ci-dessous le fichier bis avec l'exemple.

Note: Je n'ai aucun souci de reprise de l'image à la réouverture.

bonjour le fil,

les formules me semblent trop compliqués, je ne comprends pas pourquoi.

Bonsoir X Cellus,

Merci très ingénieux, bravo!

Par contre j'avais écris; quand je change les années via la liste déroulante qui se trouve dans la cellule A2 les cellules ne se libèrent pas exemple en 2023 et secondo pour les cellules j'utilise un code Ucase (majuscule) et que quand je supprime une semaine ou un mois en entier il est très très lent (la boucle ralenti et parfois j'ai le message d'erreur 'mémoire insuffisante ', la boucle ralentie car 12 mois de cellule de ("B:NI") dont 372 cellules.

Merci

Thibet

Bonjour à tous,

Est-ce quelqu'un pourrais m'aider svp. Mon ma demande de changement d'année nouvelle année nouvelle cellule.

Merci

je me répète

les formules me semblent trop compliqués, je ne comprends pas pourquoi.

Bonjour Thibet,

Ta nouvelle demande ne correspond plus au sujet (Titre de ta demande).

Merci de clôturer ce fil et de poster ton dernier fichier dans une autre demande (En changeant le Titre).

Je regarderais vers le milieu de la semaine au mieux. Si d'autres n'ont pas répondu d'ici là.

A +

Rechercher des sujets similaires à "erreur execution 481 image incorrecte vba graphique"