我有这个批处理文件查找进程名称PID number
,使用tasklist
获取port number
然后使用netstat
使用PBD_Port.csv
连接类型已建立。
最后,它会将结果导出到文件for /f "tokens=2 delims=," %%F in ('tasklist /nh /fi "imagename eq msmdsrv.exe" /fo csv') do (
set var=%%F
)
for /f "tokens=2 delims= " %%h in ('netstat -ano ^| findstr ESTABLISHED ^| findstr %var%') do (
set var1=%%h
)
echo %var1% > PBD_Port.csv
DELETE FROM passage
WHERE passageid NOT IN
(
SELECT passageid from PreEndedPassages_passages
UNION SELECT fromPassageid from severalvisit
UNION SELECT toPassageid from severalvisit
UNION SELECT registerPassageid from stationobjects WHERE registerpassageid IS NOT NULL
UNION SELECT beginPassageid from stationobjects WHERE beginPassageid IS NOT NULL
UNION SELECT endPassageid from stationobjects WHERE endPassageid IS NOT NULL
)
我使用此代码获取 PowerBi Desktop 的端口号,因为每次启动 Power Bi Desktop 时它都会更改。
是否可以在Excel中使用宏来执行相同的操作? 因此,我不想使用用户必须点击它的批处理文件,而是希望宏给出相同的结果,并将结果写入CSV而不是工作表中。
编辑:我为批处理构建了代码,我想要一般性建议如何将其转换为VBA,感谢您的评论
编辑:实际上,我过度复杂化了,端口号已存储在新SSAS实例生成的临时文本文件中,请参阅此处的不同解决方案
http://community.powerbi.com/t5/Desktop/connect-to-powerbi-desktop/td-p/87310