我需要从多个 Excel 文件导入(到 JMP)特定 Excel 工作表,并且 JMP 文件中的数据必须与指定文件来源的 ID 列堆叠在一起。
Excel 导入向导使从单个文件导入和堆叠两个或多个选定工作表变得相对容易(请参见下面的脚本)。 不同工作表中的数据结构相似。
如果可能的话,我需要一次性从所有 Excel 文件中导入所有相关工作表 - 我可以想象这可以通过下面脚本的某种循环从(捕获的?)列表中读取 Excel 文件名来解决 - 但我无法构造可用的“For 循环”。
如果有人有建议,我将非常高兴收到您的来信
亨里克
Open(
"/X:/Extracted data part 1/B6_1_PBS-0_combined.xlsx",
Worksheets( {"B6_1 Ratio", "B6_2 Ratio"} ),
Use for all sheets( 1 ),
Concatenate Worksheets( 1 ),
Create Concatenation Column( 1 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 2 ),
Headers Start on Row( 1 ),
Data Starts on Row( 3 ),
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( "-" )
)
);
// Concatenate tables
// → Data Table( "Ratio_00" )
Data Table( "Ratio_00" ) << Concatenate(
Data Table( "B6_1_PBS-0_combined" ),
Output Table( "Untitled 82.jmp" ),
Append to first table
);
你好@hhi ,
你检查过“导入多个文件“ 平台 ?
这是一个演示文稿,可以帮助您在您的用例中有效地使用它:多个文件导入 - JMP 用户社区
这是使用该平台的 Youtube 短视频:多个文件导入 - YouTube
希望这个回答对你有帮助
嗨维克多_G
谢谢你的建议。
我已尝试使用多文件导入向导,但我需要将特定的 Excel 工作表/选项卡导入到给定的堆叠文件中,并且该向导没有提供选择我想要从 Excel 文件中提取的工作表的方法。
亨里克
如果无法使用MFI,您可以使用以下方式获取文件列表目录中的文件()并使用它返回的列表来构建循环。 如果您有 JMP16+,我建议使用 For Each 而不是 For。 在循环中打开新表并将它们连接到您创建的第一个表。 最好在循环外创建第一个表或在循环内使用 if 语句。
嗨 Victor_G(再次),
我更仔细地查看了 MFI 输出,我认为我可以使其与一些导入后数据清理工作一起工作。
再次感谢您的建议。
亨里克