CIAO. Ho notato che se provo ad aprire un file Excel utilizzando uno script, l'Importazione guidata di Excel viene visualizzata se il comando Apri proviene da una casella di pulsanti, ma non viene visualizzata se il comando Apri si trova nel livello principale dello script. Per la cronaca, non voglio che la procedura guidata venga visualizzata in questo caso. Qualcuno ha familiarità con questo comportamento e, se sì, posso risolverlo?
Ad esempio, ho uno script in cui l'utente seleziona un file Excel, quindi lo apre. In questo caso il file Excel si apre come tabella JMP senza problemi. Se invece inserisco il comando per aprire il file excel all'interno di una buttonbox, appare la procedura guidata di Excel. Anche se si utilizzano le stesse identiche opzioni in entrambi i casi. Ciò è dimostrato nello script seguente, utilizzando il file xlsx allegato:
Names Default to Here(1);
//Get location of file:
path = Pick File("Select xlsx Table...",,
{"Excel|xlsx"}, 1,
0
);
If(path == "", Stop());
//Expression to open file:
open_exp = Expr(
Open(path,
Worksheets("Sheet1"),
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(0),
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(1),
Column Separator String("-")
)
);
);
//Attempt to open file...works as intended (no Import Wizard)
open_exp;
//Attempt to open file via a button...always results in the Import Wizard.
win = New Window("Temp",
ButtonBox("Open xlsx",
open_exp
)
);Come puoi vedere, entrambi i metodi utilizzano esattamente lo stesso comando con le stesse identiche opzioni sullo stesso identico file, ma ottengo 2 comportamenti diversi.
Da notare ulteriormente che quando il file xlsx viene aperto tramite la casella dei pulsanti, le impostazioni del comando di apertura sembrano essere ignorate. Cioè, se modifico le opzioni "Numero di righe nelle intestazioni", "Le intestazioni iniziano sulla riga", "I dati iniziano sulla riga", ecc., il primo metodo utilizzato rispetterà quelle nuove impostazioni. Tuttavia, il secondo metodo "pulsante" con l'Importazione guidata sembra invece sempre ripristinare le impostazioni predefinite.
Per la cronaca, non desidero modificare le mie preferenze in modo che JMP non utilizzi mai la procedura guidata di Excel. Semplicemente non voglio usarlo in questo caso e non posso richiedere ad altri utenti di questa app di apportare le stesse modifiche in base alle loro preferenze.
Le mie specifiche:
JMP Pro15.2.1
Mac OS Catalina 10.15.7
Excel: versione 16.49
Spero che qualcuno possa aiutare. Grazie!
Wendy,
C'e 'qualche aggiornamento su questo?
Ho uno script che imposta alcuni caratteri sulle mie finestre di visualizzazione, ma risulta che su alcuni computer dell'organizzazione sono installati caratteri minimi.
Quindi i miei utenti ricevono molti popup che dicono "Carattere sconosciuto". Invece di ripristinare tutti i caratteri predefiniti, ho provato a racchiuderlo nei blocchi Try(), ma non è stato d'aiuto.
Craige ha consigliato di utilizzare Batch Interactive(1), ma sembra che non funzioni, come mostra il semplice esempio seguente:
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = dt << Bivariate( Y( :height ), X( :weight ) );
rbiv = biv << Report;
For Each({box, index}, (rbiv << XPath( "//AxisBox/MouseBox/DropBox/TextEditBox" )),
Batch Interactive(1);
Try(box << Set Font( "Agency FF", 13 ));
Batch Interactive(0);
);Qualche idea sul perché Batch Interactive(1) non funziona in questo caso e su come gestire i caratteri mancanti?
CIAO, @Craige_Hales .
Batch Interactive() non è documentato poiché è considerato sperimentale.Tuttavia, è stato suggerito al team di sviluppo di JMP di promuovere la funzione fino al pieno supporto.Aggiungerò questa discussione a quella richiesta.Il caso d'uso tipico è come parte di uno script eseguito da un'azione interattiva, come fare clic su un pulsante.
La documentazione dell'opzione "Procedura guidata di Excel" è inclusa nei seguenti percorsi:
Sarò lieto di inoltrare una richiesta per includerlo nell'esempio dell'indice di scripting per l'apertura dei dati Excel.
Vedere Ignora o disabilita gli avvisi JMP modali per la funzione batchinteractive. La versione basata su pulsanti dello script conosce devi essere interattivo e ti inserisce utilmente in una procedura guidata interattiva.
Anche, Ignora l'importazione guidata di Excel nello script ha un risposta migliore .
Infine, se hai il problema opposto e desideri la procedura guidata, vedi Forza Open() per utilizzare la procedura guidata di Excel senza modificare le preferenze
@Wendy_Murphrey entrambi sembrano difficili da scoprire nella documentazione.
modifica: collegamento a strana variazione con SetFont