Comment mettre à jour automatiquement un tableau croisé dynamique lorsque les données sources changent ?

  • Partage Ça
Hugh West

Lorsque vous devez rafraîchir ou mettre à jour les données d'une base de données existante, vous pouvez utiliser la fonction de mise à jour des données. Tableau croisé dynamique après l'avoir créé, vous devez utiliser l'option Changer la source des données Cependant, la mise à jour manuelle du tableau croisé dynamique est peu pratique et prend du temps. Par conséquent, vous devez trouver un moyen de créer un tableau croisé dynamique automatisé qui mettra automatiquement à jour les données. Ainsi, dans ce tutoriel, nous allons vous montrer comment mettre automatiquement à jour un tableau croisé dynamique lorsque les données sources changent.

Télécharger le cahier d'exercices

Téléchargez ce cahier d'exercices pour vous entraîner pendant que vous lisez cet article.

Rafraîchir automatiquement le tableau croisé dynamique.xlsm

7 étapes faciles pour mettre à jour automatiquement un tableau croisé dynamique lorsque les données sources changent

Dans l'image ci-dessous, nous avons inclus un ensemble de données contenant des informations sur les détails des ventes dans différentes régions. Vous pouvez supposer que notre ensemble de données est assez grand. Ainsi, pour un objectif dynamique, nous avons besoin d'un processus automatisé à chaque fois que nous mettons à jour les données. Pour ce faire, nous allons exécuter un programme Code VBA et l'appliquer à l'ensemble de données ci-dessous. Pour effectuer cette tâche, suivez les étapes ci-dessous.

Étape 1 : Créer un tableau croisé dynamique avec une plage de données source

  • Tout d'abord, cliquez sur le Insérer pour insérer un tableau croisé dynamique .
  • Ensuite, cliquez sur le Tableau croisé dynamique à partir du Tableaux croisés dynamiques groupe.
  • Sélectionnez le De la table/plage de la liste.

  • Sélectionnez la plage du tableau avec l'en-tête.
  • Choisissez le Nouvelle feuille de travail pour placer le tableau croisé dynamique sur une nouvelle feuille de travail.
  • Ensuite, cliquez sur OK .

  • Dans une nouvelle feuille de calcul ( Feuille 4 ), le tableau croisé dynamique sera créé.
  • Comme vous pouvez le voir dans l'image ci-dessous, vous pouvez choisir les champs ( Région , Branche , Prix , Quantité etc.) à paraître dans le tableau croisé dynamique .
  • Sélectionnez le Tableau croisé dynamique à partir du Tableau croisé dynamique - Analyser Vous pouvez trouver le nom de votre tableau croisé dynamique ( Tableau croisé dynamique2 ) et modifiez-le si nécessaire.

Étape 2 : Ouvrir l'éditeur Visual Basic pour appliquer le code VBA

  • Appuyez sur Alt + F11 pour ouvrir le Éditeur Visual Basic .
  • De la Objets Excel VBA , double-cliquez pour sélectionner le nom de la feuille de calcul ( Feuille 2 ) où se trouve votre ensemble de données.

Étape 3 : Créer un événement de feuille de calcul avec votre feuille contenant l'ensemble de données

  • Pour créer un événement de la feuille de calcul pour Feuille 2 sélectionnez le Feuille de travail de la liste.

Notes : A événement de la feuille de calcul signifie que toute modification apportée aux données source sera immédiatement répercutée dans votre programme. C'est pourquoi le programme s'exécute automatiquement lorsque vous apportez des modifications au jeu de données source.

Étape 4 : Insérer un nouvel événement pour le changement dans la feuille de travail

  • Choisissez Changement au lieu de SelectionChange pour créer un nouvel événement de feuille de calcul.

  • Supprimer le précédent pour ne garder que l'événement de changement.

Étape 5 : Déclarer toutes les variables avec une déclaration explicite d'option

  • Pour déclarer toutes les variables et trouver les variables non déclarées, tapez Option explicite en haut de la page du programme.

Étape 6 : Insérer un code VBA pour mettre à jour le tableau croisé dynamique automatiquement

  • Obtenez le formulaire complété Code VBA et le coller.
 Option Explicit Private Sub Worksheet_Change(ByVal Target As Range) 'Sheet4 est le nom de la feuille où se trouve le tableau croisé dynamique 'PivotTable2 est le nom du tableau croisé dynamique Sheet4.PivotTables("PivotTable2").PivotCache.Refresh End Sub 

Étape 7 : Exécuter le code VBA et obtenir des changements dans les résultats

  • Appuyez sur F5 pour exécuter le Code VBA .
  • Apportez une modification à l'ensemble de données pour voir si le programme fonctionne toujours. Par exemple, dans le programme IRE la région, le prix pour le Belfast a été transformée en £113 .

  • Retournez à votre tableau croisé dynamique, et voyez que la modification a été faite. prix valeur ( £113 ) est mis à jour.

Conclusion

J'espère que cet article vous a donné un tutoriel sur la façon de mettre automatiquement à jour un tableau croisé dynamique lorsque les données d'origine changent dans la base de données. Excel Toutes ces procédures doivent être apprises et appliquées à votre ensemble de données. Jetez un coup d'œil au cahier d'exercices et mettez ces compétences à l'épreuve. Nous sommes motivés pour continuer à créer des tutoriels comme celui-ci grâce à votre précieux soutien.

N'hésitez pas à nous contacter si vous avez des questions ou à laisser vos commentaires dans la section ci-dessous.

Nous, les Exceldemy sont toujours à l'écoute de vos demandes.

Restez avec nous et continuez à apprendre.

Hugh West est un formateur et analyste Excel très expérimenté avec plus de 10 ans d'expérience dans l'industrie. Il est titulaire d'un baccalauréat en comptabilité et finance et d'une maîtrise en administration des affaires. Hugh a une passion pour l'enseignement et a développé une approche pédagogique unique qui est facile à suivre et à comprendre. Sa connaissance approfondie d'Excel a aidé des milliers d'étudiants et de professionnels du monde entier à améliorer leurs compétences et à exceller dans leur carrière. Grâce à son blog, Hugh partage ses connaissances avec le monde, offrant des tutoriels Excel gratuits et une formation en ligne pour aider les particuliers et les entreprises à atteindre leur plein potentiel.