Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 将代码从批处理转换为vba_Excel_Vba_Batch File_Powerbi - Fatal编程技术网

Excel 将代码从批处理转换为vba

Excel 将代码从批处理转换为vba,excel,vba,batch-file,powerbi,Excel,Vba,Batch File,Powerbi,我有一个批处理文件,它查找进程名msmdsrv.exe,使用tasklist获取PID编号,然后使用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

我有一个批处理文件,它查找进程名
msmdsrv.exe
,使用
tasklist
获取
PID编号
,然后使用
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
我使用此代码获取PowerBi桌面的端口号,因为每次启动PowerBi桌面时,端口号都会发生变化

是否可以在Excel中使用宏来执行相同的操作? 因此,我希望使用宏来给出相同的结果,并将结果写入工作表,而不是CSV,而不是用户必须单击的批处理文件

编辑:我为批处理构建了代码,我想要一个如何将其转换为VBA的一般建议,谢谢您的评论

编辑:事实上,我把事情复杂化了,端口号已经存储在新SSAS实例生成的临时文本文件中,请参见此处的不同解决方案


你的问题在这里太宽泛了;通过展示你的尝试来缩小范围!请注意,CSV文件没有多个工作表,它只是一个简单的文本文件,因此没有“活动工作表”!这个网站是关于帮助那些尝试的人,而不是用勺子喂饱每个人。给我们看一些尝试,我们就会让步。祝你好运:)如果你知道批处理脚本在做什么,在VBA中,你可以在字符串变量中获得shell命令的输出,类似于
stringResult=CreateObject(“WScript.shell”).Exec(“tasklist/nh/fi”imagename eq msmdsrv.exe“/fo csv”).StdOut.ReadAll,我想你的问题在这里太宽泛了;通过展示你的尝试来缩小范围!请注意,CSV文件没有多个工作表,它只是一个简单的文本文件,因此没有“活动工作表”!这个网站是关于帮助那些尝试的人,而不是用勺子喂饱每个人。给我们看一些尝试,我们就会让步。祝你好运:)如果你知道批处理脚本在做什么,在VBA中,你可以在字符串变量中获得shell命令的输出,比如
stringResult=CreateObject(“WScript.shell”).Exec(“tasklist/nh/fi”“imagename eq msmdsrv.exe”“/fo csv”).StdOut.ReadAll
谢谢,我会试试看