Excel 在列中拆分结果
我有一个日志输出到CSV文件生成的结果 是否有一种方法可以使用公式或简单的VBA分割结果,以便路径的信息为a列,访问的相应值为B列 路径:Microsoft.PowerShell.Core\FileSystem::C:\Users\vma\Desktop\VMADMIN\csv 访问:{System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule} 路径:Microsoft.PowerShell.Core\FileSystem::C:\Users\vma\Desktop\VMADMIN\Test 访问:{System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule} 路径:Microsoft.PowerShell.Core\FileSystem::C:\Users\vma\Desktop\VMADMIN\test1 访问:{System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule} 路径:Microsoft.PowerShell.Core\FileSystem::C:\Users\vma\Desktop\VMADMIN\test2 访问:{} 路径:Microsoft.PowerShell.Core\FileSystem::C:\Users\vma\Desktop\VMADMIN\Test3 访问:{System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule}Excel 在列中拆分结果,excel,vba,powershell,Excel,Vba,Powershell,我有一个日志输出到CSV文件生成的结果 是否有一种方法可以使用公式或简单的VBA分割结果,以便路径的信息为a列,访问的相应值为B列 路径:Microsoft.PowerShell.Core\FileSystem::C:\Users\vma\Desktop\VMADMIN\csv 访问:{System.Security.AccessControl.FileSystemAccessRule,System.Security.AccessControl.FileSystemAccessRule,Syst
这是非常非常粗糙的,一点也不防弹,但也许这是你要找的东西的样板
Sub PathAccessSplit()
Dim wsFrom, wsTo As Worksheet
Dim rowFrom, rowTo, lastRow As Integer
Dim cellVal As String
Set wsFrom = Sheets("Sheet1")
Set wsTo = Sheets("Sheet2")
lastRow = wsFrom.Cells(wsFrom.Rows.Count, "A").End(xlUp).Row
rowTo = 1
For rowFrom = 1 To lastRow
cellVal = wsFrom.Cells(rowFrom, 1).Text
If (Left(cellVal, 4) = "Path") Then
wsTo.Cells(rowTo, 1).Value = cellVal
ElseIf (Left(cellVal, 6) = "Access") Then
wsTo.Cells(rowTo, 2).Value = cellVal
rowTo = rowTo + 1
End If
Next rowFrom
End Sub
当然,它假定源数据在Sheet1中,并且输出将重定向到Sheet2。很容易让它覆盖现有的工作表,但这取决于您想要什么。如果输出长度不同,这是否可行?我正在寻找一个vba sub,我可以执行它,因为输出的长度会随着每个日志的不同而不同。您的输入文件是由PowerShell生成的。显然,您正在将
格式列表
输出写入.csv文件。为什么这样做而不是生成正确的CSV输出?