Création et automatisation des rapports personnalisés avec Minitab

Parmi nos clients, des entreprises de secteurs variés souhaitent établir à l’aide du logiciel de statistiques Minitab divers types de rapports. Ces rapports sont souvent générés chaque semaine ou chaque mois. L’automatisation de ces tâches chaque fois que cela est possible, permet de créer ou d’actualiser des rapports avec un moindre effort. Le temps investi pour cela est faible mais le temps gagné est exponentiel.

Dans cet article, le formateur Minitab Bruno Scibilia s’inspire des explications données par le membre de l'équipe de développement clients au sein de la société Minitab Daniel Griffith dans son actualité publiée sur le blog de Minitab en anglais " Creating a Custom Report using Minitab, part 1. En le lisant, vous découvrirez comment utiliser Minitab pour générer automatiquement un rapport basé sur les informations provenant d’une source de données externe. Cette présentation portera sur l'automatisation d’analyses à partir de Minitab.

Vérification des conditions de validité pour une analyse de capabilité

Créons dans un premier temps un rapport de Capabilité simple basé sur des tests statistiques et représentations graphiques fréquemment utilisés dans le cadre de démarches qualité. Voici une liste des tâches à effectuer :

  1. Tout d’abord, nous avons besoin de données. Nous pouvons automatiquement extraire les données du mois courant à partir d'une base de données Access. J'ai créé ma propre table dans Access pour cet exemple, je l'ai compressée dans un fichier .zip que vous pouvez télécharger ici. Décompressez le fichier et enregistrez le fichier Access sur votre ordinateur.
  2. Remarque :

    Le chemin d'accès vers le fichier contenant la macro doit comporter un nombre de caractères le plus faible possible, sinon la macro ne fonctionnera pas.

  3. Ensuite, nous devrons analyser les données. Nous effectuerons trois analyses et stockerons les résultats suivants :
      Test de Normalité → Enregistrement de la valeur p associée au test.
      Carte de contrôle → Enregistrement du nombre de points hors contrôle.
      Capabilité du procédé → Enregistrement de la valeur du Cpk.

Génération du code pour exécuter certaines fonctions automatiquement dans Minitab

Importons les données dans Minitab à l’aide d’un exécutable.

Dans cette présentation, l’exécutable a déjà été préparé. Dans d’autres cas de figure, ce sera à vous de créer ce script. Créer un exécutable dans Minitab est beaucoup plus facile qu'il ne pourrait paraître de prime abord. Il vous suffit d’effectuer une séquence de tâches dans Minitab (par exemple, sélectionnez le sous-menu Fichier > Requête de la base de données (ODBC) pour importer les données). Vous pourrez ensuite récupérer les commandes de session associées à partir de la fenêtre Historique (en cliquant sur l'icône du bloc-notes avec un symbole > dans la barre d’outils sous la barre des menus) et sélectionnez les commandes / sous-commandes. Pour tester les séquences de commandes de session directement dans le logiciel Minitab, copiez-les et collez-les dans le sous-menu Edition > Editeur de ligne de commande.

Vous trouverez, listées ci-dessous, les commandes de session Minitab utiles pour importer les données.

Remarque :

Attention, il faut veiller à respecter les signes de ponctuation, les retours à la ligne.

ODBC;

Connect "DSN=MS Access Database;DBQ=C:\Rendement.accdb";

SQLString "SELECT Date,Rendement FROM Rendement " &

"where MONTH(Date)=Month(NOW())" &

"and YEAR(Date)=YEAR(NOW())".

Ce langage peut vous sembler incompréhensible, je vous l’explicite. La section ci-dessous est une série de commandes qui indique à Minitab où se trouve votre base de données et comment s'y connecter :

Connect "DSN=MS Access Database;DBQ=C:Rendement.accdb";

Remarque :

Si vous répliquez ces commandes de session sur votre poste, vous devrez modifier le chemin indiqué pour accéder au répertoire de la base de données C: Rendement.accdb, le but étant de refléter l'emplacement réel du fichier sur votre poste (veillez à ce que ce chemin soit le plus court possible, sinon la macro ne fonctionnera pas).

WHERE MONTH(Date)=Month(NOW()) and YEAR(Date)=YEAR(NOW()).

Pouvez-vous deviner à quoi sert la condition ci-dessus ? Si vous pensez qu'elle permet d’importer les données qui correspondent au mois en cours, vous avez raison.

Les instructions SQL pourraient être beaucoup plus compliquées que celles de cet exemple. Minitab vous permet d'utiliser l'instruction SQL qui s’adapte le mieux à vos besoins, quelle que soit la complexité de votre travail.

Une fois les données importées, vous devriez obtenir cette fenêtre de session, ou feuille de données, dans Minitab :

 

Après avoir importé les données à l’aide du langage de commandes Minitab, nous exécuterons quelques tests et créerons des graphiques à partir de Minitab.

Pour effectuer le test de normalité sur le rendement et stocker la valeur p dans la colonne 3 de la feuille de travail, les commandes de session sont les suivantes :

Normtest Rendement;

Spvalue C3.

 

Nous allons maintenant créer une carte de contrôle pour valeurs individuelles et comptabiliser le nombre de points hors contrôle :

IChart Rendement;

Stamp Date; # place les Dates dans l’axe des X de la carte

TResults C4.

Sum C4 K1

Remarque :

Le symbole diese # inséré dans le langage de commande vous permet d’afficher un commentaire explicitant votre macro sans compromettre son fonctionnement, à l’attention de l’utilisateur de la macro. Ainsi ici, le commentaire est « cette sous-commande place les Dates dans l’axe des X de la carte ».

La constante K1 représente le nombre de points hors de contrôle.

 

Pour cette analyse de capabilité, supposons que les données sont normales et que le rendement du produit a une spécification inférieure égale à 7 et une spécification supérieure égale à 13. Stockons la valeur du Cpk dans la colonne 5 de la feuille de travail :

Capa Rendement 1; # le nombre 1 indique la taille du sous-groupe

Lspec 7;

Uspec 13;

CPK C5.

Nous avons importé les données du mois en cours et avons effectué trois analyses avec le langage de commande suivant (vous devrez modifier le chemin indiqué pour accéder au répertoire de la base de données C: Rendement.accdb, veillez à ce que ce chemin soit le plus court possible, sinon la macro ne fonctionnera pas) :

ODBC;

Connect "DSN=MS Access Database;DBQ=C:\Rendement.accdb";

SQLString "SELECT Date,Rendement FROM Rendement " &

"where MONTH(Date)=Month(NOW())" &

"and YEAR(Date)=YEAR(NOW())".

Normtest Rendement;

Spvalue C3.

IChart Rendement;

Stamp Date; # place les Dates dans l’axe des X de la carte

TResults C4.

Sum C4 K1

Capa Rendement 1; # le nombre 1 indique la taille du sous-groupe

Lspec 7;

Uspec 13;

CPK C5.

 

A toutes fins utiles, vous pouvez télécharger le fichier de projet Minitab pour vérifier si vous obtenez les mêmes résultats que l'auteur de l'article.

En ajoutant XWORD ou XPPOINT à la fin du script, les graphiques et analyses statistiques générés peuvent être automatiquement exportés dans un rapport sur un document Word ou PowerPoint, respectivement.

Si vous enregistrez la série de commande ci-dessus dans un fichier Bloc-notes avec une extension de fichier .mtb, vous obtiendrez un exécutable Minitab. Vous pouvez lancer cet exécutable à partir de Minitab en accédant au sous-menu Fichier > Autres fichiers > Lancer un Exécutable ou dans Minitab 17.3 : en sélectionnant le sous-menu Outils > Lancer un Exécutable.

Pour faciliter le lancement de l’exécutable, une icône - ou un menu - Minitab personnalisée peut être associée à la macro, de façon à pouvoir l’activer par un simple clic.

  • Minitab News

    Recevez gratuitement notre lettre d'information électronique mensuelle pour connaître l'actualité de Minitab, consulter les didacticiels, lire des études de cas, obtenir des conseils statistiques, et recevoir d'autres informations utiles.

    Pour s'abonner
  • Suivez Minitab

    Join Minitab on LinkedIn Follow Minitab on Twitter Like Minitab on Facebook
  • Plus d'articles

En utilisant ce site, vous acceptez l'utilisation de cookies à des fins d'analyse et de personnalisation du contenu. Lisez notre politique

OK