script jmp per esportare fogli dati in Excel con nomi di fogli più lunghi di 31 caratteriCIAO,
Sto cercando di esportare alcune tabelle di dati JMP in Excel (un file Excel con schede separate per ciascun foglio). Tuttavia, alcuni nomi dei fogli dati superano i 31 caratteri che Excel non supporta come nomi di schede. Se provo a utilizzare l'opzione "Esporta" in JMP, funziona bene con nomi più lunghi di 31 caratteri troncati. Ma se provo a utilizzare "Crea cartella di lavoro Excel ()" in uno script JMP, il software si blocca.
Qualcuno sarebbe in grado di aiutarmi con lo script da utilizzare per esportare in Excel troncando i nomi dei fogli più lunghi di quelli consentiti da Excel (31 caratteri), per favore?
Grazie
Personalizzazione di massafinestreRi: script jmp per esportare fogli dati in Excel con nomi di fogli più lunghi di 31 caratteriTransformEach può essere sostituito con un ciclo for, qualcosa del genere
// dt_names = Transform Each({dt_ref}, dt_list, Substr(dt_ref << get name, 1, 31));
// for every dt_ref in dt_list, make a new list using substr...
dt_names = {};
for( i = 1, i <=nitems(dt_list), i += 1,
dt_ref = dt_list[i];
insert into( dt_names, substr( dt_ref << get name, 1, 31 ) );
);Ri: script jmp per esportare fogli dati in Excel con nomi di fogli più lunghi di 31 caratteriPer aggiungere alla mia domanda, diciamo che ho circa 100 singoli file jmp da esportare contemporaneamente. Non sarei in grado di definire i nomi di ogni singolo file separatamente sullo script. Quindi quello che voglio che lo script faccia è esportare qualsiasi file jmp aperto in quel momento, inclusi quelli con un nome molto lungo.
Ri: script jmp per esportare fogli dati in Excel con nomi di fogli più lunghi di 31 caratteriMolte grazie jthi. Tuttavia, ho JMP 15 e sembra che lo script non possa eseguire il comando Transform. Sapresti di uno script alternativo per favore?
Ri: script jmp per esportare fogli dati in Excel con nomi di fogli più lunghi di 31 caratteriScusa, jthi ha scritto la sceneggiatura.
Ri: script jmp per esportare fogli dati in Excel con nomi di fogli più lunghi di 31 caratteriCiao DD1,
Innanzitutto, grazie tdhi per la sceneggiatura.Se non ti dispiace condividerlo, invia lo script che si arresta in modo anomalo al supporto tecnico di JMP all'indirizzo support@jmp.com e cercheremo di correggere il comportamento di arresto anomalo per una versione futura.
Brian Corcoran
Sviluppo JMP
Ri: script jmp per esportare fogli dati in Excel con nomi di fogli più lunghi di 31 caratteriPuoi usare Substr per ottenere una parte di string e dt_ref << get name per ottenere il nome di datatable. Di seguito è riportato un esempio che dovrebbe iniziare (richiede JMP16 a causa dell'utilizzo di Transform Each):
<BR />Names Default To Here(1);
dt1 = Open("$SAMPLE_DATA/Big Class.jmp");
dt2 = Open("$SAMPLE_DATA/Abrasion.jmp");
dt1 << Set Name("veryveryveryveryveryveryveryveryveryveryveryveryveryveryveryverylongname");
dt2 << Set Name("notsolongname");
dt_list = {dt1, dt2};
dt_names = Transform Each({dt_ref}, dt_list, Substr(dt_ref << get name, 1, 31));
Show(dt_names);
Create Excel Workbook("$TEMP/MyWorkbook.xlsx", dt_list, dt_names);
Close(dt1, no save);
Close(dt2, no save);