importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPBonjour, j'utilise la fonction "Importer plusieurs fichiers" pour obtenir des données de différents fichiers Excel, mon défi est que seules les données du premier onglet sont extraites. J'ai trois autres onglets sur chaque fichier dont j'aimerais obtenir les données. Existe-t-il un moyen de faire cela dans JMP ? j'apprécie toute l'aide.
A.F.Aiz
Automatisation et scriptsAnalyse et modélisation des données de baseAccès aux donnéesRe : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPJ'ai copié à nouveau le script et il s'exécute sans erreur.
Il fait principalement ce qui est nécessaire, le seul problème est que la colonne ajoutée qui décrit l'origine du point de données (le fichier et l'onglet) n'est pas correcte.
Idéalement, j'aimerais qu'il crée une colonne de description indiquant où chaque point de données arrive dans le fichier, quelque chose qui se trouve "File_Name_Tab_Name". Y a-t-il un moyen d'ajouter cela au script ?
J'apprécie toute l'aide,
Pour cent
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPJe soupçonne la ligne JSL juste avant la ligne
dtfinal = New Table( "Together" );
ne se termine pas par un point-virgule.
Sans voir les lignes avant ce que vous avez inclus, cela me laisse seulement deviner le problème.
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPJ'ai ajouté les lignes de script supplémentaires et je reçois toujours l'erreur ci-dessous lorsque j'essaie de l'exécuter. Les scripts JMP sont-ils sensibles à la casse ? J'ai corrigé le "f" de dtfinal en dfFinal, mais cela n'a pas aidé.

Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPNames Default To Here( 1 );
theFiles = Multiple File Import(
<<SET folder="">" )
) << import data;
// There is a option that can be specified to the MFI
// << Stack Similar Files
// that can be specified, and JMP will stack all files that
// have the same columns.
// However, the below JSL can be used to Concatenate(Stack) all created
// data tables
// The MFI returns a complete list of all of the data tables created
// The variable in this example that contains that list is the
// variable "theFiles". It can be used in the Concatenation Platform
// to reference all of the created data tables.
dtfinal = New Table( "Together" );
dtFinal << concatenate(
theFiles,
Append to First Table( 1 ),
Create Source Column( 1 )
);
// To close the individual files after the concatenation
For Each( {file}, theFiles, Close( file, nosave ) );</SET>Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPmerci beaucoup! le script a très bien fonctionné comme prévu. Il a ouvert 3x tables JMP car chacun des fichiers Excel possède 3x onglets.
Existe-t-il un moyen de concaténer ces fichiers en un seul ? Je pense que cela nécessite que les colonnes JMP portent les mêmes noms, et je ne sais pas comment procéder à l'aide des scripts JMP. Des recommandations ? Merci.
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPEn utilisant
names default to here(1);
theFiles = multiple file import(
<<SET folder="">")
)<<IMPORT data="https://community.jmp.com/">< ode></IMPORT></SET>
<P>dans JMP 16, JMP 17 et JMP 18, les fichiers Excel à plusieurs feuilles ouvrent toutes les feuilles. JMP 15 et versions antérieures n'ouvrent que la première feuille.</P>
<P>Si vous utilisez JMP 15 ou une version antérieure, vous pouvez utiliser Files in Directory() pour lire tous les fichiers, puis parcourir en utilisant Open() pour lire les fichiers Excel et il lira toutes les feuilles.</P>
<P> </P>
<P> </P>Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPSi vous changez d'IMF en
Names Default To Here( 1 );
theFiles = Multiple File Import(
<<SET folder="">" )
) << Set Add File Name Column( 1 )<< import data;</SET>
Cela créera une colonne contenant le nom du fichier. Vous pouvez ensuite ajouter une nouvelle colonne dans la table de données finale qui rassemble la colonne Nom de fichier avec la colonne Table source pour obtenir ce dont vous avez besoin.
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPLe script semble bon, le fichier généré a une nouvelle colonne répertoriant le nom du fichier source, mais il ne répertorie pas le nom de l'onglet. Toutes les données des trois onglets ont le même nom de fichier, rien n'est répertorié sur le nom de l'onglet. D'autres recommandations ?
Merci beaucoup,
Pour cent

Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPSi le code que vous avez exécuté spécifie
<< Set Add File Name Column( 1 )<< import data;
L'IMF créera une nouvelle colonne dans chaque tableau créé appelée « Nom du fichier ». Il contient le nom du classeur Excel. L'IMF donne également à chaque table de données créée un nom basé sur le nom du classeur suivi du nom de l'onglet individuel.
Par conséquent, lorsque la concaténation est exécutée, avec l'option
Create Source Column( 1 )
spécifiée, une colonne supplémentaire nommée « Source Table » est créée dans la table des résultats de la concaténation.

et il contient le nom du classeur suivi du nom de l'onglet. D'après ce que j'ai interprété de votre question, cela devrait vous fournir les informations dont vous avez besoin. Si vous souhaitez que les données des 2 colonnes soient affichées sous une forme différente, par exemple combinées en une seule colonne, tout ce que vous avez à faire est de créer une nouvelle colonne avec une formule qui concatène les informations des 2 colonnes ensemble.
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPLe problème est que la colonne avec le nom de fichier et le nom de l'onglet n'est pas créée. il existe une colonne Nom de fichier qui contient le nom du fichier source suivi des données. La table source est incorrecte, le même nom est utilisé pour les données de plusieurs fichiers/onglets.

Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPVeuillez fournir les informations suivantes à partir de ces informations provenant de l'un de vos classeurs Excel importés
- Le dossier du répertoire de chemin
- Le nom de fichier du classeur
- Les noms des onglets (feuilles de calcul) dans le classeur Excel
- Les noms de tables de données que JMP a attribués aux différentes tables de données après avoir exécuté MFI sur le classeur
- Les valeurs de la colonne Nom de fichier pour les tables de données créées
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPJ'ai joint le script, 2x fichiers Excel avec plusieurs onglets et un tableau généré lors de l'exécution du script.
Merci pour votre aide,
Pour cent
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPLa documentation ne l'indique pas, mais apparemment, le paramètre par défaut pour le mode Stack est Stack Similar. Lorsque je le force à table par fichier, cela semble résoudre les problèmes
theFiles = Multiple File Import(
<<SET folder=""></SET>
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPCela fonctionne très bien, maintenant la colonne "Table source" répertorie correctement les noms de fichiers et d'onglets. J'apprécie vraiment toute l'aide.
Une dernière question, pas vraiment cruciale, existe-t-il un moyen d'exclure les données d'un des onglets ? Je ne veux pas vraiment de données de l'onglet "Principal", car il ne s'agit que de la date et de l'heure. Maintenant que j'ai tout dans le même tableau, je peux effectuer un nettoyage manuel, en me demandant simplement s'il existe un moyen de l'ajouter au script.
Merci encore,
Pour cent
Re : importer plusieurs fichiers Excel avec de nombreux onglets dans un seul tableau dans JMPIl y a quelques façons de le faire.
- Utilisez une fonction Contains() pour rechercher dans la liste Files, puis utilisez la fonction Remove From() pour supprimer la table de la liste, ce qui la supprimera de l'opération Concatenate.
- Une fois la table de données Together créée, utilisez la fonction Select Where() pour identifier les lignes de la table de données de la colonne Source Table que vous ne souhaitez pas, puis utilisez Supprimer les lignes pour supprimer les lignes sélectionnées.