PowerQuery - 文件夹查询导入新文件
PowerQuery - Folder Query import new files
如果我创建了一个从文件夹导入 XML 的 PowerQuery 函数,当文件夹中有新文件以仅包含数据时,我如何在同一个 excel 文件中重用查询从这些新文件并将数据附加到当前 table?
您可以使用一个简单的 vba 脚本监视文件夹中的文件更改,该脚本使用 WMI 每 n 秒轮询一次目录内容。
类似的东西...
Sub WatchDirectory(dir as string, every as integer)
Set wmisvc = GetObject("winmgmts:\.\root\cimv2")
let query = "SELECT * FROM __InstanceOperationEvent " _
& "WITHIN " & every _
& " WHERE Targetinstance ISA 'CIM_DirectoryContainsFile' and " _
& "TargetInstance.GroupComponent='Win32_Directory.Name=" _
& Chr(34) & dir & Chr(34) & "'"
Set events = wmisvc.ExecNotificationQuery(query)
Do While True
Set event = events.NextEvent()
if event.Class = "__InstanceCreationEvent" then
....
end if
Loop
有关 wmi 的更多信息,请参阅 https://sites.google.com/site/beyondexcel/project-updates/exposingsystemsecretswithvbaandwmiapi
有关使用 WMI 监视文件的详细信息,请参阅 https://blogs.technet.microsoft.com/heyscriptingguy/2005/04/04/how-can-i-monitor-for-different-types-of-events-with-just-one-script/
如果您使用 从文件/从文件夹 启动 Power Query 并浏览到您的文件夹,您将看到每个文件在 table 中显示为一行,包含 修改日期 等列。您可以在修改日期上使用 Date/Time 过滤器或在必要时使用更复杂的过滤器来过滤该列表(post 您的具体要求,我会尽力引导您朝着正确的方向前进)。
将查询筛选为 "new files" 后,您可以将 [Content] 列传递到函数中。
最后,根据保存的 Excel Table 现有查询的输出和上面的 "new files" 查询追加一个新查询,以获得组合输出。新查询将设置为 加载到/仅创建连接。
如果我创建了一个从文件夹导入 XML 的 PowerQuery 函数,当文件夹中有新文件以仅包含数据时,我如何在同一个 excel 文件中重用查询从这些新文件并将数据附加到当前 table?
您可以使用一个简单的 vba 脚本监视文件夹中的文件更改,该脚本使用 WMI 每 n 秒轮询一次目录内容。
类似的东西...
Sub WatchDirectory(dir as string, every as integer)
Set wmisvc = GetObject("winmgmts:\.\root\cimv2")
let query = "SELECT * FROM __InstanceOperationEvent " _
& "WITHIN " & every _
& " WHERE Targetinstance ISA 'CIM_DirectoryContainsFile' and " _
& "TargetInstance.GroupComponent='Win32_Directory.Name=" _
& Chr(34) & dir & Chr(34) & "'"
Set events = wmisvc.ExecNotificationQuery(query)
Do While True
Set event = events.NextEvent()
if event.Class = "__InstanceCreationEvent" then
....
end if
Loop
有关 wmi 的更多信息,请参阅 https://sites.google.com/site/beyondexcel/project-updates/exposingsystemsecretswithvbaandwmiapi
有关使用 WMI 监视文件的详细信息,请参阅 https://blogs.technet.microsoft.com/heyscriptingguy/2005/04/04/how-can-i-monitor-for-different-types-of-events-with-just-one-script/
如果您使用 从文件/从文件夹 启动 Power Query 并浏览到您的文件夹,您将看到每个文件在 table 中显示为一行,包含 修改日期 等列。您可以在修改日期上使用 Date/Time 过滤器或在必要时使用更复杂的过滤器来过滤该列表(post 您的具体要求,我会尽力引导您朝着正确的方向前进)。
将查询筛选为 "new files" 后,您可以将 [Content] 列传递到函数中。
最后,根据保存的 Excel Table 现有查询的输出和上面的 "new files" 查询追加一个新查询,以获得组合输出。新查询将设置为 加载到/仅创建连接。