Une suite de logiciels de tableur Microsoft avec des outils pour analyser, créer des graphiques et communiquer des données
Cette réponse a été automatiquement traduite. Par conséquent, il peut y avoir des erreurs grammaticales ou des formulations étranges.
Salut Redouan,
Bonne journée! Merci pour l’explication détaillée
En fonction de vos besoins, il s’agit d’un problème connu lorsque les graphiques sont liés à des tableaux croisés dynamiques. Lorsque le tableau croisé dynamique est actualisé, Excel peut reconstruire le graphique, ce qui peut entraîner la perte de formatage comme les étiquettes de données.
Voici quelques étapes qui pourraient vous aider :
- Activez l’option « Conserver la mise en forme des cellules lors de la mise à jour » :
- Cliquez avec le bouton droit de la souris sur le tableau croisé dynamique > Options du tableau croisé dynamique.
- Sous l’onglet « Mise en page et format », cochez la case « Conserver la mise en forme des cellules lors de la mise à jour ».
- Désactivez l’option « Actualiser les données à l’ouverture du fichier » :
- Dans la même fenêtre d’options de tableau croisé dynamique, allez dans l’onglet « Données ».
- Décochez l’option « Actualiser les données à l’ouverture du fichier ».
- Utilisez une macro pour restaurer automatiquement les étiquettes de données :
- Si le problème persiste, vous pouvez utiliser une simple macro pour réappliquer des étiquettes de données chaque fois que le tableau croisé dynamique est mis à jour.
- Évitez les modifications structurelles des données sources :
- Assurez-vous que votre table source se développe correctement lorsque de nouvelles données sont ajoutées.
- Évitez d’insérer des lignes en dehors de la plage de table définie.
Macro pour restaurer automatiquement les étiquettes de données
Sous-Worksheet_PivotTableUpdate privé (cible ByVal en tant que tableau croisé dynamique)
Dim cht As ChartObject
Dim srs As Series
Dim ptChart en tant que graphique
' Parcourez tous les graphiques de la feuille de travail
Pour chaque cht In Me.ChartObjects
Définir ptChart = cht. Graphique
' Parcourez chaque série de données dans le graphique
Pour chaque srs dans ptChart.SeriesCollection
En cas d’erreur Reprendre le suivant
Srs. HasDataLabels = Vrai
Srs. DataLabels.ShowValue = Vrai
En cas d’erreur GoTo 0
Prochain srs
Prochain cht
Fin du sous-marin
Comment l’utiliser :
- Appuyez sur Alt + F11 pour ouvrir l’éditeur Visual Basic pour Applications (VBA).
- Dans la fenêtre Projet, sélectionnez la feuille de calcul qui contient votre tableau croisé dynamique et votre graphique.
- Collez le code dans la fenêtre de code de cette feuille.
- Enregistrer le fichier en tant que classeur compatible avec les macros (.xlsm)
Essayez ces solutions de contournement et faites-nous savoir si cela vous aide à résoudre votre problème.
Nous savons que ce problème peut être frustrant, mais nous allons le résoudre ! Faites-moi savoir comment ça se passe.
Merci beaucoup de votre compréhension et de votre coopération.
Sinceres salutations
Jason-NP - MSFT | Spécialiste du support de la communauté Microsoft.