Générer des rapports automatiquement dans excel

L`une des principales caractéristiques de Microsoft Excel est la possibilité de générer des rapports. Vous pouvez créer des feuilles de calcul interactives pour permettre aux autres utilisateurs de saisir plus facilement des données dans un classeur, et vous pouvez également générer des rapports automatiquement. Les deux fonctions nécessitent une certaine connaissance de Visual Basic. Voici les étapes pour effectuer les deux tâches.

Pas

Méthode1 sur 2:Créer une feuille de calcul interactive

Image intitulée Automatiser les rapports dans Excel Étape 1
1. Décidez de la mise en page de votre feuille de calcul. La feuille de calcul doit être organisée de manière à ce que les autres utilisateurs puissent rapidement trouver les champs de saisie des données.
  • Vous pouvez orienter votre feuille de calcul horizontalement ou verticalement. La plupart des utilisateurs trouveront une disposition verticale plus facile à utiliser, surtout si vous voulez qu`ils puissent imprimer la feuille de calcul.
Image intitulée Automatiser les rapports dans Excel Étape 2
2. Créer des en-têtes pour la feuille de calcul. Placez un en-tête au-dessus de chaque colonne, ainsi que dans la cellule à gauche de chaque cellule de la colonne où vous souhaitez placer les champs de saisie.
Image intitulée Automatiser les rapports dans Excel Étape 3
3. Appuyez simultanément sur les touches Alt et F11. Cela ouvrira l`éditeur Microsoft Visual Basic.
Image intitulée Automatiser les rapports dans Excel Étape 4
4. Double-cliquez sur "Ce classeur" dans la fenêtre "Projet-VBA Projet" en haut à gauche. Cela ouvrira une fenêtre d`encodage dans la fenêtre principale de l`éditeur.
Image intitulée Automatiser les rapports dans Excel Étape 5
5. Sélectionner "Procédure" via Insérer dans le menu principal. La boîte de dialogue Insérer une procédure s`ouvre.
Image intitulée Automatiser les rapports dans Excel Étape 6
6. Saisissez un nom pour la procédure dans le champ Nom . Donnez à la procédure un nom significatif, tel que "Dépenses totales" si votre feuille de calcul interactive sera utilisée pour suivre les dépenses de voyage. Cliquez sur OK pour fermer la boîte de dialogue.
  • Votre nom de procédure ne peut pas contenir d`espaces, mais vous pouvez utiliser un tiret ( _ ) au lieu d`un espace.
  • Lorsque la boîte de dialogue `Insérer une procédure` se ferme, vous verrez une ligne `Public Sub` suivie du nom de la procédure. Sous la ligne, vous verrez un espace et les mots « End Sub ».
    Image intitulée Automatiser les rapports dans Excel Étape 7
    sept. Entrez le code pour chaque champ de saisie dans la feuille de calcul. Vous allez écrire deux lignes de code pour chaque entrée.
  • La première ligne de code est `Range("nom de la cellule").Sélectionnez`, où "nom de la cellule" la cellule doit représenter où le champ de saisie sera placé. Il s`agit de la cellule immédiatement à droite d`une étiquette de texte ; s`il y a une étiquette de texte dans la cellule A2, un champ de saisie sera placé dans la cellule B2, donc (Plage("B2").Sélectionner). Assurez-vous que les guillemets sont autour du nom de la cellule, mais pas autour du bloc de code entier.
  • La deuxième ligne de code ressemble à `ActiveCell.Valeur=InputBox("Invite d`entrée")`, vrai "Invite d`entrée" est le texte affiché à l`utilisateur pour indiquer le type de données à saisir. Par exemple, si le coût des repas doit être saisi dans la cellule de saisie, vous remplacez "Invite d`entrée" de "Entrez le total de tous les repas, y compris les pourboires." (Placez les guillemets autour du texte saisi, mais pas autour de la commande entière).
    Image intitulée Automatiser les rapports dans Excel Étape 8
    8. Entrez le code pour chaque champ de calcul. Encore une fois, vous utilisez les mêmes deux lignes que ci-dessus, mais cette fois ActiveCell.La valeur est une fonction de calcul, telle que SUM, au lieu de la fonction InputBox utilisée pour afficher le message d`entrée.
    Image intitulée Automatiser les rapports dans Excel Step 9
    9. Ajoutez une ligne de code pour enregistrer votre feuille de calcul interactive. Le code est `ActiveWorkbook.Enregistrer sous nom de fichier : ="nom de fichier.xls" `, par lequel "nom de fichier" est le nom de votre feuille de calcul interactive. (Mettre des guillemets autour "nom de fichier.xls", mais pas autour de l`exemple complet).
    Si vous disposez d`Excel 2007 ou d`une version ultérieure, vous pouvez utiliser la sortie `.xls` remplacé par `.xlsx`, mais si certains des utilisateurs de votre feuille de calcul interactive utilisent Excel 2003 ou une version antérieure, ils ne pourront pas utiliser la feuille de calcul sans plug-in.
    Image intitulée Automatiser les rapports dans Excel Étape 10
    dix. Appuyez sur Alt et Q en même temps. Ferme l`éditeur Visual Basic.
    Image intitulée Automatiser les rapports dans Excel Étape 11
    11. Appuyez sur Alt et F8 en même temps. Cela ouvrira la fenêtre Macro.
    Image intitulée Automatiser les rapports dans Excel Étape 12
    12. Cliquez sur le nom de votre procédure dans la liste Macro. S`il s`agit de la seule procédure de la liste, elle sera automatiquement sélectionnée.
    Image intitulée Automatiser les rapports dans Excel Step 13
    13. Cliquez sur le bouton Options. Il vous sera maintenant demandé de choisir un caractère pour créer une combinaison de touches avec la touche Ctrl. Choisissez une lettre significative qui n`a pas encore été utilisée comme raccourci, comme un « i » pour « entrée ».
    Image intitulée Automatiser les rapports dans Excel Étape 14
    14. Cliquez sur « OK » pour fermer la fenêtre des options de macro. Vous pouvez désormais distribuer votre feuille de calcul interactive aux utilisateurs potentiels. Après l`avoir ouvert, ils peuvent utiliser le raccourci clavier pour activer la saisie de données et suivre les notifications que vous avez créées pour la saisie de données.

    Méthode 2 sur 2: Automatiser la génération de rapports

    Image intitulée Automatiser les rapports dans Excel Étape 15
    1. Transformez votre rapport en tableau croisé dynamique. Les tableaux croisés dynamiques sont conçus pour créer des aperçus des données afin que vous puissiez comparer les chiffres et repérer les tendances. Votre tableau croisé dynamique doit être lié à des données ailleurs dans votre feuille de calcul ou importés d`une base de données.
    Image intitulée Automatiser les rapports dans Excel Étape 16
    2. Écrire un script Visual Basic pour ouvrir et fermer le rapport. Le script doit exécuter les fonctions ci-dessous. Chaque fonction est décrite suivie du code à implémenter entre crochets. Lors de l`écriture du code du programme réel, écrivez-le dans un seul bloc, remplacez les noms d`exemple par vos propres noms et n`incluez pas les crochets qui entourent l`exemple entier.
  • Ouvrir la feuille de calcul en mode lecture seule. [DIM XLAppSet XLApp=CréerObjet("Exceller.application")xlapp.visible=falsexlapp.classeurs.ouvrir \excellocnom de fichier.xls,3,]
  • Actualisez les données et enregistrez le rapport (dans cet exemple au format PDF avec un horodatage). [Truexlapp.classeur actif.ActualiserAllxlapp.classeur actif.ExportAsFixedFormat xlTypePDF, \pdflocreportname_ & DatePart("aaaa, maintenant()) & "-" & à droite("0" & DatePart("m",Maintenant()),2) & "-" à droite("0" & DatePart("ré",Maintenant()),2) & ".pdf"] Votre document de sortie est-il dans un format différent, remplacez `.pdf` puis par la fin appropriée pour ce format.
  • Fermez la feuille de calcul sans l`enregistrer et fermez Excel. [xlQualityStandardxlapp.classeur actif.fermer Falsexlapp.quitter]
  • Utilisation `.xlsx` au lieu de `.xls` comme sortie du nom de la feuille de calcul, si votre feuille de calcul est enregistrée au format XML d`Excel 2007 et versions ultérieures.
    Image intitulée Automatiser les rapports dans Excel Étape 17
    3. Ecrivez un script batch dans le Bloc-notes (et enregistrez-le plus tard sous le nom `.bat`) pour démarrer le script Visual Basic. Ceci est nécessaire pour que le script Visual Basic s`exécute automatiquement. Sans le script batch, le script VB doit être exécuté manuellement.
    Si votre script est dans ce format, remplacez le dossier et le nom de fichier spécifiés par les vôtres, en omettant les crochets : [cscript /nologo \filelocscript.vb]
    Image intitulée Automatiser les rapports dans Excel Étape 18
  • 4. Écrire un script batch pour vérifier si le fichier de sortie existe lors de sa création. Le script doit décrire les fonctions ci-dessous. Chaque fonction est suivie d`un code à implémenter entre crochets. Lorsque vous allez écrire le code réel, faites-le en un seul bloc et remplacez les noms des exemples par vos propres noms, sans les crochets.
  • Vérifiez si le fichier de sortie existe. [pour /f "jetons=2-4 delims=/ " %%a dans (`date /t`) définit rreport=nom_rapport_%%c-%%a-%%b.pdf)] Si le fichier de sortie n`est pas un PDF, remplacez ".pdf" puis par la bonne extension.
  • Si le fichier/rapport de sortie existe, envoyez-le par courrier électronique aux personnes qui en ont besoin. [S`il existe \pdfloc%rreport% ( sendemail -f [email protected] -t destinataire@domaine destinataire.com -u Rapport planifié -m Le rapport %%report% est joint. -a pdfloc%rreport% -s yourserver:port -xu username -xp password)]
  • Si le fichier/rapport de sortie n`existe pas à l`emplacement spécifique, demandez à la procédure de vous envoyer un message indiquant que l`envoi a échoué. [ Sinon ( sendemail -f [email protected] -t expé[email protected] -u Le rapport n`a pas été exécuté -m le fichier %rreport% n`existe pas dans \pdfloc -s votreserveur:port -xu nom d`utilisateur -xp mot de passe)]
    Image intitulée Automatiser les rapports dans Excel Étape 19
  • 5. Vérifiez si le dossier `Bureau` existe sur l`ordinateur. Vous devez vérifier que le dossier Desktop existe à la fois pour un système 32 bits et un système 64 bits. Si vous ne le faites pas, Excel et votre feuille de calcul devront être ouverts manuellement.
  • Emplacement sur le système 32 bits : c:windowssystem32configsystemprofile
  • Emplacement sur le système 64 bits : c:windowssyswow64configsystemprofile
    Image intitulée Automatiser les rapports dans Excel Étape 20
  • 6. Si nécessaire, planifiez une tâche pour exécuter les scripts. Les scripts batch doivent être exécutés en continu, en succession, que quelqu`un utilise ou non l`ordinateur. La puissance doit être réglée le plus haut possible.

    Des astuces

    Les tâches planifiées sont mieux exécutées à partir d`un serveur, généralement à partir d`un compte système avec des privilèges d`administrateur. Le seul inconvénient de l`exécution de tâches à partir d`un compte système est qu`aucune interface utilisateur n`est disponible ; mais les tâches automatisées s`exécutent généralement en arrière-plan, sans que l`utilisateur s`en aperçoive.

    Оцените, пожалуйста статью