如何使用 Excel 中指定的“用户配置文件”打开 Chrome?
例如。我有一个包含许多链接的 Excel 电子表格,例如:
C:\Users\User\Desktop\File1.txt
C:\Users\User\Desktop\File2.html
C:\Users\User\Desktop\File3.mhtml
答案1
要从 Excel VBA 打开 Google Chrome,请使用 VBA.Shell 命令/方法。假设您运行该程序的设备上确实安装了 Google Chrome,请尝试以下操作。您需要针对特定目的进行调整。
Sub OpenBrowserFiles()
Dim strGCPath As String, strUrlFile As String
'strGCPath: could be in Program Files, or AppData\Local for the device user
strGCPath = "Path\To\Google\chrome.exe"
'strUrlFile: path of file on the device you want to opn in chrom
strUrlFile = "file:///path/to/file/on/device/the_file.html"
'Note: the profile name, you can make this a variable too.
VBA.Shell strGCPath & " --profile-directory=Person1 " & " -url " & strUrlFile
End Sub
另外,考虑一下您是否有一个文件列表,比如在您的示例中,循环遍历单元格或范围对象,并注意您可以打开多少个 Google Chrome 实例。
编辑:通过单击 Excel 工作表中的“文件链接”来打开它 @ffredy55
无论您已将单元格插入或格式化为超链接,还是保留文本格式,您都可能需要将点击事件捕获在指定范围内,以便使用指定的浏览器(在您的情况下为 Google Chrome)打开文件链接。我相信还有其他方法。
在 VBA 编辑器中,打开文件链接所在工作表的代码表。请注意,这是一个简化的示例。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rngClickable As Excel.Range
Dim strGCPath As String
' Important! Where is Google Chrome installed at.
' Could it be in your AppData\Local folder ???
strGCPath = "C:\Program Files\Google\Chrome\Application\chrome.exe"
' Define the range of clickable cells you require.
' Note: "A2:A4" will also work (from your example)
Set rngClickable = Me.Range("B2:B4")
' Check if where you click is strictly in the range where your file-links are in
If Not (Excel.Application.Intersect(rngClickable, Target) Is Nothing) Then
' The condition is met, launch Google Chrome with the URL passed.
VBA.Shell strGCPath & " -url " & VBA.CStr(Target.Value)
End If
End Sub
如果您希望在启动 Google Chrome 时使用特定的配置文件,
VBA.Shell strGCPath & "--profile-directory=Person1" & " -url " & VBA.CStr(Target.Value)
我希望这能给你想要做的事情一个推动力。另外,请注意 Hannu 的评论。