帶有名稱列表的Excel工作簿嗨,
我喜歡創建一個帶有工作表名稱的excel工作簿,以及定義為變量名稱的文件。
這是我的腳本:
Nitems = 2;
listexcelsheet = {"||file1||","||file2||","||file3||"};
listexcelfile = {"||name1||","||name2||","||name3||"};
if (Nitems == 2,
Create Excel Workbook(
"$Documents/JMP/"||product_name||"_"||process||".xlsx" ,
listexcelfile,listexcelsheet
)
);
我試圖使用Eval()和Parse()並沒有成功。我感謝您的幫助。
謝謝
Re:帶有名稱列表的Excel工作簿嗨布萊恩,
謝謝你的說明。你是對的。我先得到三張紙,因為要覆蓋以前的文件。我刪除了excel文件然後我運行腳本,有兩張我不知道的表。不管怎樣,謝謝你的幫助。
Re:帶有名稱列表的Excel工作簿你附上的桌子上有兩張紙。我無法重現你獲得3張紙的情況。
布賴恩
Re:帶有名稱列表的Excel工作簿嗨布萊恩,
謝謝。我想要一個工作簿和兩個工作表。我上次嘗試的腳本創建了三個工作表。我想要兩個。
感謝您的進一步幫助。
亞當
@briancorcoran 中寫道:
嗨AT,
我以為那就是你想要的?如果您需要為每個工作表單獨的工作簿,則需要創建一個循環並為每個JMP表單獨調用該函數。
布賴恩
Re:帶有名稱列表的Excel工作簿嗨AT,
我以為那就是你想要的?如果您需要為每個工作表單獨的工作簿,則需要創建一個循環並為每個JMP表單獨調用該函數。
布賴恩
Re:帶有名稱列表的Excel工作簿感謝Brian的反饋。我嘗試了你的腳本並創建了三個工作表。
我附加了輸出。我有JMP 13專業版。
謝謝
Re:帶有名稱列表的Excel工作簿嗨AT,
我擔心你遇到了即將發布的JMP 14中修復的Mac錯誤。 問題是在Mac上提取文件名的方式。 我想你是在JMP 13上。 我現在知道的唯一解決此問題的方法是給出表的名稱列表,而不是完整的文件名。 在這種情況下,您可以重用“名稱”變量,但Big Class必須有一個空格。 一個有效的例子是:
product_name = "ProductA";
process = "Process1";
//Tables need to be open to go into Excel Workbook
file1 = open("//Library/Application Support/JMP/13/Samples/Data/Abrasion.jmp";);
file2 = open("//Library/Application Support/JMP/13/Samples/Data//Big Class.jmp";);
//Worksheet names
name1 = "Abrasion";
name2 = "Big Class";
//listexcelfile = eval list({file1, file2});
listx = eval list({name1, name2});
listexcelsheet = eval list({name1, name2});
Create Excel Workbook(
"$Documents/JMP/"||product_name||"_"||process||".xlsx" ,
listx, listexcelsheet
);
對此給您帶來的不便,我感到很遺憾。
Brian Corcoran
JMP開發
Re:帶有名稱列表的Excel工作簿嗨卡梅隆,
我使用的Mac機器可能與Window機器不同。
Re:帶有名稱列表的Excel工作簿謝謝Cameron。對不起,我仍然收到錯誤。我附加了我使用的腳本,並且lop文件說 - “找不到任何指定的表。保存失敗“。
product_name = "ProductA";
process = "Process1";
//Tables need to be open to go into Excel Workbook
file1 = open("$SAMPLE_DATA/Abrasion.jmp";);
file2 = open("$SAMPLE_DATA/Big Class.jmp";);
//Worksheet names
name1 = "Abrasion";
name2 = "BigClass";
listexcelfile = eval list({file1, file2});
listexcelsheet = eval list({name1, name2});
Create Excel Workbook(
"$Documents/JMP/"||product_name||"_"||process||".xlsx" ,
listexcelfile, listexcelsheet
);
如果在“創建Excel工作簿”中,我首先編寫了listexcelsheet,然後是listexcelfile,則輸出生成但僅具有“Abraison.jmp”。我也附上了這個。
謝謝
Re:帶有名稱列表的Excel工作簿您在Create Excel Workbook()函數中向後獲得了listexcelsheet和listexcelfile。 扭轉那些,它應該工作。
當我說你在我的第一個回復中有那些倒退時,我指的是名字。 您似乎將文件列表命名為“listexcelsheet”,並將工作表列表命名為“listexcelfile”。完全按照給定的方式運行我的腳本,它應該工作。
我附上了我得到的東西。
Re:帶有名稱列表的Excel工作簿謝謝Cameron。 我嘗試了你的腳本,只創建了一個工作表“Abrasion”。
這是我用過的:
product_name = "ProductA";
process = "Process1";
//Tables need to be open to go into Excel Workbook
file1 = open("$SAMPLE_DATA/Abrasion.jmp";);
file2 = open("$SAMPLE_DATA/Big Class.jmp";);
//Worksheet names
name1 = "Abrasion";
name2 = "BigClass";
listexcelfile = eval list({file1, file2});
listexcelsheet = eval list({name1, name2});
Create Excel Workbook(
"$Documents/JMP/"||product_name||"_"||process||".xlsx" ,
listexcelsheet, listexcelfile
);
Re:帶有名稱列表的Excel工作簿很難說沒有看到你的確切代碼。 以下是我對示例數據庫中的2個表所做的操作,並且兩個工作表都按預期顯示在工作簿中:
product_name = "ProductA";
process = "Process1";
//Tables need to be open to go into Excel Workbook
file1 = open("$SAMPLE_DATA/Abrasion.jmp";);
file2 = open("$SAMPLE_DATA/Big Class.jmp";);
//Worksheet names
name1 = "Abrasion";
name2 = "BigClass";
listexcelfile = eval list({file1, file2});
listexcelsheet = eval list({name1, name2});
Create Excel Workbook(
"$Documents/JMP/"||product_name||"_"||process||".xlsx" ,
listexcelfile, listexcelsheet,
);Re:帶有名稱列表的Excel工作簿感謝Cameron的快速解決方案。它可以工作,但我只得到一個不是三個創建的工作表,沒有錯誤。可能有什麼不對?謝謝
Re:帶有名稱列表的Excel工作簿我認為你缺少的是Eval List()函數。 您嘗試獲取這些文件的值的方式不起作用。 相反,試試這個:
listexcelfile= eval list({file1, file2, file3});這同樣適用於您對listexcelsheet的定義。
我也認為你的listexcelfile和listexcelsheet變量向後。