Base de Connaissance - Français

Apprenez auprès des experts.

Sortie de plusieurs fichiers à l'aide du même modèle Excel

Alteryx
Alteryx
Créé
Sortie de plusieurs fichiers à l'aide du même modèle Excel

Vous pouvez avoir un cas d'utilisation par lequel vous disposez d'un ensemble de données volumineux et que vous souhaitez le produire pour séparer les fichiers Excel. Toutefois, dans chacun de ces fichiers Excel, vous souhaitez appliquer un format de modèle.

Par exemple, j'ai un DataSet qui a trois ID uniques chacun avec 10 enregistrements. Je veux à la sortie de chacun de ces enregistrements d'ID unique à différents fichiers Excel, mais donner à l'utilisateur la possibilité de filtrer les champs directement après que les données ont été écrites. Dans Alteryx il y a la manière native d'ajouter des filtres dans Excel. Une façon d'y parvenir est de créer un fichier Template Excel avec des filtres déjà appliqués à la première ligne dans Excel. Dans Alteryx nous pouvons alors spécifier une gamme de cellules pour ajouter des données aussi, et par la suite cela va automatiquement remplir les filtres et donner à l'utilisateur l'option de filtrer dans Excel immédiatement.

PIC 1 .png

Exemple de fichier de modèle

Avant de commencer, il y a quelques pré-requis:

  • Cet exemple utilise des fichiers .xlsx
  • Un fichier de modèle doit déjà exister afin de trouver la plage de données que vous souhaitez que les données insérées dans.
  • Les feuilles Excel que vous souhaitez écrire les données doivent déjà exister avec le format de modèle inséré.

Considérations

  • Selon le nombre de variables que vous avez dans votre champ unique choisi, il peut être difficile et la douleur jalonnement pour créer manuellement les fichiers Excel avec des modèles insérés. Par conséquent, il existe deux options potentielles que vous pouvez prendre.
  • Option 1: plus petit nombre de variables: Manual créer les différents fichiers Excel pour chaque variable et ajouter dans le modèle.
  • Option 2: plus grand nombre de variables: créez un script .bat ou .exe qui crée les fichiers Excel spécifiques à chacune des variables que vous avez dans votre DataSet et insère le fichier de modèle. Une fois que vous avez créé le script .bat, vous pouvez l'exécuter à l'aide de l'outil exécuter la commande dans Alteryx.
  • Une fois que les fichiers Excel ont été créés avec le modèle inséré, nous sommes prêts à passer à Alteryx.

Dans quel format vos données sont-elles nécessaires?

Votre dataset principal doit correspondre au fichier de modèle que vous avez créé dans Excel. Cela signifie que vous devez avoir le même nombre de champs dans votre DataSet, comme vous le faites dans votre fichier de modèle. Cela devient particulièrement important lorsque nous parlons de plages nommées plus loin dans cet article.

Une fois que les données ont le bon nombre de champs, nous avons besoin pour générer le champ chemin d'accès complet afin que nous puissions écrire au fichier modèle Excel correct.

La meilleure façon de le faire est de construire le chemin d'accès complet vous-même à l'aide d'un outil de formule. Cet article décrit comment le faire et au lieu d'utiliser le champ [State], vous pouvez utiliser le champ unique que vous cherchez à créer de nouveaux fichiers Excel pour.

Une fois que vous avez créé les chemins complets, vous vous demandez peut-être comment Alteryx sait exactement où placer les données dans les fichiers Excel. C'est simple, tout ce que vous devez faire est d'ajouter le nom de la feuille et la plage nommée à la fin du chemin d'accès complet que vous venez de créer.

Expression de l'outil de formule:'C:/Users/JonSnow/Documents/IDExcels/ [champ d'ID]. .xlsx'+'| Sheet1 a1: J5'

Résultat: C:/Users/JonSnow/Documents/IDExcels/1001.xlsx | Sheet1 $ a1: J5

Cet article montre comment faire pour importer des plages nommées Excel, mais les plages de noms sortantes utilisent les mêmes principes et étapes, mais dans l'outil de données de sortie.

Parce que vous avez un fichier de modèle, la plage nommée ne doit pas changer. Pourtant, si elle ne vous pouvez modifier manuellement la plage nommée dans votre champ de chemin d'accès complet.

Félicitations, vous êtes à mi-chemin!

Vous disposez maintenant d'un chemin d'accès complet et d'une plage nommée associée à chaque enregistrement de votre dataset principal. Nous devons maintenant prendre ce chemin complet et le produire. Avant de faire cela, nous devons d'abord trouver les chemins d'accès complets uniques pour se nourrir dans une macro batch.

Étapes simples d'abord

Nous allons d'abord aller de l'avant et ajouter un outil unique après l'outil de formule dans le Workflow. Vous pouvez maintenant cocher le champ chemin d'accès complet de sorte qu'il ne nous laisse que les chemins complets uniques.

Nous allons construire cette macro batch!

Bien que intimidant à première vue la macro batch peut devenir votre meilleur ami très rapidement. Pour créer une macro de lot à cet effet, vous devrez copier un sous-ensemble de votre dataset principal. Pour ce faire, vous pouvez ajouter un exemple d'outil (5 premiers enregistrements) à votre DataSet et à un outil de navigation. Lorsque vous exécutez le workflow et cliquez sur l'outil parcourir, cela vous permettra de copier les champs avec en-têtes inclus.

PIC 3 .png

Ouvrir un nouveau Workflow

Une fois que vous avez un nouveau Workflow ouvert clic droit sur la toile et appuyez sur coller. Cela va coller les enregistrements dans un outil d'entrée de texte. Vous pouvez alors cliquer avec le bouton droit sur l'outil d'entrée de texte et choisir'convertir en entrée macro'. Cela nous permettra d'alimenter notre ensemble de données principal dans la macro.

PIC 4 .png

Ajouter cet outil de sortie

Vous pouvez maintenant joindre un outil de sortie à votre entrée de macro. Lors de la configuration de l'outil de sortie, choisissez un fichier d'espace réservé comme «écrire dans le fichier ou la base de données» (ce n'est qu'un de vos fichiers Excel nouvellement générés).

Dans la section Options au-dessous de votre chaîne de fichier de sortie, sélectionnez dans la liste déroulante pour'options de sortie''écraser le fichier (Remove)'. Vous pensez peut-être que cela va supprimer votre modèle. Ne craignez pas qu'il ne va écraser n'importe quoi dans votre plage nommée spécifiée dans votre chemin d'accès complet.

Voici la clé de toute l'opération!

Au bas de l'outil de sortie cochez la case pour'prendre le champ/nom de la table à partir du champ', puis dans l'option déroulante, choisissez'modifier le chemin d'accès complet du fichier'.

Si vous souhaitez écraser une plage de cellules, sélectionnez "remplacer la goutte", si vous cherchez au remplacement de plusieurs modèles de fichiers, s'il vous plaît sélectionnez "remplacer le fichier."

Pic 11 .png

En dehors d'une macro de lot cela signifierait qu'un fichier serait généré pour chaque variable unique que nous avions dans le champ choisi «nom de fichier ou une partie du nom de fichier». Malheureusement, dans cet exemple, nous ne pouvons pas le faire parce qu'il produirait un fichier pour chaque ligne de données que nous avions (chaque ligne de données ayant un chemin d'accès complet).

Pour contourner ce besoin, nous devons mettre à jour la chaîne de connexion de sortie dans l'outil de sortie avec les chemins complets uniques à l'aide d'un paramètre de contrôle. Cela permettra à la macro batch de batch en fonction du chemin d'accès complet unique et de tirer toutes les données à la fois avec le même chemin de fichier dans le DataSet principal.

Chemins de fichiers uniques

Pic 12 .png

Chemins d'accès de fichiers associés par enregistrement (ligne)

Pic 13 .png

Une fois que vous avez Brough le contrôle paramètre sur la toile. Faites glisser du Q vers le boulon de foudre sur le dessus de l'outil de sortie. La configuration que nous voulons choisir dans l'outil d'action est «mise à jour de la chaîne de connexion» et cliquez sur le chemin d'accès complet qui l'insère dans la zone de texte inférieure dans la fenêtre de configuration (voir ci-dessous).

Vous pouvez maintenant enregistrer cette macro de lot.

Pic 14 .png

Vue d'ensemble de la macro batch terminée

Revenons à votre workflow de DataSet principal.

À la fin du workflow permet d'aller et insérer dans la macro batch (clic droit sur la toile >> macro >> sélectionnez la macro batch que vous venez de construire).

Vous verrez que la macro batch a deux entrées. Le point d'interrogation dans le paramètre de contrôle et le nœud normal est l'entrée de données. Dans le nœud du paramètre de contrôle, vous devez vous alimenter dans vos chemins d'accès complets uniques et dans l'autre ancre dont vous avez besoin pour connecter le DataSet d'origine.

Dans l'interface macro sur l'onglet «groupe me», vous devrez sélectionner le champ «contrôle de la zone» comme champ de chemin d'accès complet à partir de votre outil unique et le champ «Input12» doit être le champ chemin d'accès complet de votre dataset principal. Cela regroupera ensuite ces champs uniques lors de l'alimentation dans les données et les affichera en tant que groupes plutôt que des enregistrements individuels.

L'onglet questions se réfère à ce que vous allez alimenter dans le paramètre de contrôle. Ce sera le champ de chemin d'accès complet unique.

Pic 10 .png

Tu l'as fait!

Vous avez maintenant correctement construit et configuré la macro batch à écrire pour séparer les fichiers Excel dans une plage définie. Dans cet exemple particulier, les en-têtes filtrés auto ont été remplis dès que les données de Alteryx avaient été écrites avec succès dans les fichiers Excel.

S'il vous plaît trouver ci-joint un exemple de workflow (construit dans Alteryx 10,5)

Si vous avez des questions concernant ce processus, veuillez contacter le support.

Meilleur,

Jordan Barker

Consultant solutions, Alteryx Inc.

10,1
Pièces jointes
Contributeurs
Étiquettes