Est-il possible d'écrire un script qui ouvre toujours la dernière feuille d'un fichier xlsx ?J'ai besoin d'un script JSL qui ouvre toujours la dernière feuille d'un fichier xlsx choisi. Existe-t-il une fonction pour faire cela en JSL ?
Alternativement, est-il possible d'y parvenir en compilant toutes les feuilles du fichier Excel dans une liste et en ouvrant le dernier élément de la liste ? Ou ouvrir le fichier Excel de manière à ce que l'utilisateur puisse saisir la feuille à ouvrir ?
Automatisation et scriptsAccès aux donnéesRe : Est-il possible d'écrire un script qui ouvre toujours la dernière feuille d'un fichier xlsx ?Voici l'exemple de l'index de script qui illustre comment obtenir une liste des feuilles de calcul qui se trouvent dans un wookbook donné.De là, on peut sélectionner la dernière feuille de calcul.

Names Default To Here( 1 );
sheetList = Get Excel Worksheets( "$SAMPLE_IMPORT_DATA\Team Results.xlsx" );
Show( sheetList );
À partir de là, il est simple d'obtenir la dernière entrée de la liste
lastSheet = sheetList[N Items( sheetList )];
Re : Est-il possible d'écrire un script qui ouvre toujours la dernière feuille d'un fichier xlsx ?Cela ne semble pas pouvoir fonctionner. Ici, j'ai écrit un code pour récupérer le fichier xlsx d'intérêt, dont je voudrais obtenir la dernière feuille de travail et l'ouvrir dans une table de données. Pourriez-vous nous conseiller sur la façon d'avancer à partir du code ci-dessous ?
sheetList = Get Excel Worksheets(Pick File( "Select xlsx file","$DOCUMENTS",{"Excel File|xlsx", "All Files|*"},1,0,""));
Show( sheetList );
lastSheet = sheetList[N Items( sheetList )];Re : Est-il possible d'écrire un script qui ouvre toujours la dernière feuille d'un fichier xlsx ?Une fois que vous avez le nom de la dernière feuille et le chemin d'accès au fichier, vous pouvez utiliser Open() pour ouvrir le fichier avec uniquement la dernière feuille de calcul.
À partir de l'index des scripts :

Re : Est-il possible d'écrire un script qui ouvre toujours la dernière feuille d'un fichier xlsx ?Votre code semble fonctionner pour moi.Quel problème rencontrez-vous avec ?Quelle version de JMP et quel système d'exploitation ?
Re : Est-il possible d'écrire un script qui ouvre toujours la dernière feuille d'un fichier xlsx ?Salut,
J'ai ajouté une référence au fichier choisi, qui peut ensuite être branché sur Open().Faites-nous savoir si cela fonctionne (les paramètres d'ouverture devront peut-être être ajustés pour votre fichier) :
sheetList = Get Excel Worksheets(file=Pick File("Select xlsx file","$DOCUMENTS",{"Excel File|xlsx", "All Files|*"},1,0,""));
Show( sheetList );
lastSheet = sheetList[N Items( sheetList )];
Open(
file,
Worksheets( lastSheet ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 0 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( "-" )
)
);