Graphique non chargé a l'ouverture du fichier Excel
Bonjour a tous, j'espère que vous allez bien malgré la crise sanitaire que nous traversons.
Pour exposé mon problème, je vous présente le contexte. J'ai réussi a créer une petite interface, en naviguant a droit et a gauche sur plusieurs forum ,pour mon entreprise actuel permettant de contrôler le poids des pièces sortantes des machines de production. Ce système permet de voir l'évolution du poids des pièces ainsi que de leur côte index.
J'ai fait en sorte de lancer le VBA automatiquement lors de l'ouverture du fichier. Problème, lorsque je passe dans la section graphique ( MDP : test ), que je sélectionne mes données ( jour non pris dans le code pour le moment ) et que je fait "Afficher graphique" une erreur peut survenir ou alors lors du passage sur Graphique 2, Graphique 3 etc..
J'ai remarquer que cet erreur était du au graphique dans l'onglet "TCD" qui n'était pas "chargé" comme on peut le voir dans l'image ci dessous.
Je suis obligé de faire un "balayage" de l'onglet TCD pour que les graphique soit chargé pour que mon outils fonctionne.
J'avais trouvé un sujet sur ce fait avec un code permettant de supprimer ce problème mais elle n'as pas fonctionné dans mon cas, et malheureusement je ne l'ai plus sous la main.
Ma question est donc la suivante :
Est-il possible d'avoir un code pour un "balayage" de l'onglet TCD ? ( Open workbook > TCD > contrôlede la barre de défilement > Fermer Workbook ) ?
Avez-vous une autre solution ?
Je vous remercie,
Cordialement,
PS : Je serais très intéresser d'avoir un retour sur ma petite création, je suis plonger dessus depuis un bon moins en essayant de faire avec mes trouvailles, et je trouve ça passionnant !
Bonjour Kassn,
Joli petit développement
Ca à l'air de fonctionner avec le code comme ceci
A tester de ton côté
@+
Bonjour BrunoM45,
Merci de t'intéresser a mon sujet !
Je viens de tester ton code, malheureusement j'ai une autre erreur : "impossible de lire la propriété pivotfields de la classe pivottable"
Il me semble que cet erreur survient lorsque qu'il ne trouve pas le nom du champ. Pourtant le nom du champ est bon.
J'ai vu que dans ton code, tu appelais la feuille TCD. Comme j'ai plusieurs TCD sur cette feuille, il ne sais pas lequel choisir ?
Ou alors c'est du fait que j'ai nommé mes TCD ? TCD1,TCD2,...
Je continue de tester des modifs de mon côté en attendant !
*EDIT*
Je viens de re-tester ton fichier et tout me semble impeccable de mon coté ! J'ai eu une erreurs sur quelqu'un mais c'est par rapport a la disposition des graphique ! Je modifies tout ça et je test !
Merci encore !
*EDIT2*
Suite a la remise en forme des graphique, malgré ton code il m'affiche toujours " Image incorrect", je vais garder ta position initiale et tenter de faire un nouvel onglet pour les côte index.
*EDIT3*
A priori tout a l'air de fonctionné coté poids, j'ai c/c ton code pour l'adapté pour les côtes index, ( Userform > Graphindex ) et rebelote " Image incorrect" je ne vois pas d'où viens le soucis
Re,
Les TCD pour les index vont de 5 à 10, il manque sur ton fichier le 11ème Y2
Il faut donc ajouter 4 à l'index de la boucle
Private Sub graph_Click()
Dim Ind As Integer
If mois.Value = "" Then
MsgBox " Veuillez sélectionner un mois", vbOKOnly, " Donnée manquante"
Exit Sub
End If
Application.EnableEvents = False
With Sheets("TCD")
' Les TCD index vont de 5 à 10
For Ind = 1 To 5
With .PivotTables("TCD" & 4 + Ind)
With .PivotFields("N° Moule")
.ClearAllFilters
.CurrentPage = Me.ComboBox1.Value
End With
With .PivotFields("Mois")
.ClearAllFilters
.CurrentPage = Me.mois.Value
End With
.PivotCache.Refresh
End With
Me.Controls("P" & Ind).Visible = True
Next Ind
End With
Application.EnableEvents = True
' Exporter l'image du graphique
Set g = Sheets("TCD").ChartObjects(5).Chart
fichier = ThisWorkbook.Path & Application.PathSeparator & "graphique1.jpg"
g.Export Filename:=fichier, FilterName:="JPG"
Image2.Picture = LoadPicture(fichier)
Kill fichier
End SubVoilà, @+
Bonjour BrunoM45,
Pour les cotes index, j'avais trouver une alternative, mais ton code semble plus logique, je te remercie
Cependant j'ai toujours le problème de l'erreur "image incorrect" uniquement pour afficher les graph des côté index.
Aurais-tu rajouter des lignes particulière ?
Merci encore,
Cdlt,
Bonjour,
J'ai finalement trouver une solution.
Dans mon onglet "TCD" j'ai regrouper mes graphique ensemble en début de feuille ( c'est pas trop jolie mais bon, ce n'est pas sensé être accessible)
J'ai remarquer que même si le vba se lançait a l'ouverture du fichier, la feuille Excel s'ouvre aussi même si elle est non visible. J'ai donc fait en sorte que mes graphique se retrouve en début de feuille afin qu'il soient "chargés".
Et comme un exemple vaut plus que des mots :
Sujet résolu !