Как открыть Chrome из Excel?

Вопрос или проблема

Как открыть Chrome, используя указанный “профиль пользователя” из Excel?

Например. У меня есть таблица Excel со многими ссылками, такими как:

C:\Users\User\Desktop\File1.txt
C:\Users\User\Desktop\File2.html
C:\Users\User\Desktop\File3.mhtml

Чтобы открыть Google Chrome из Excel VBA, используйте команду / метод VBA.Shell. Предполагая, что Google Chrome действительно установлен на устройствах, с которых вы будете это запускать, попробуйте следующее. Вам нужно будет подстроить это под ваши конкретные нужды.

Sub OpenBrowserFiles()
    Dim strGCPath As String, strUrlFile As String

    'strGCPath: может находиться в Program Files или AppData\Local для пользователя устройства
    strGCPath = "Path\To\Google\chrome.exe"

    'strUrlFile: путь к файлу на устройстве, который вы хотите открыть в Chrome
    strUrlFile = "file:///path/to/file/on/device/the_file.html"

    'Примечание: имя профиля, вы также можете сделать это переменной. 
    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
    
    ' Важно! Где установлен Google Chrome. 
    ' Может быть, в вашей папке AppData\Local ???
    strGCPath = "C:\Program Files\Google\Chrome\Application\chrome.exe"

    ' Определите диапазон кликабельных ячеек, который вам нужен.
    ' Примечание: "A2:A4" также будет работать (из вашего примера)
    Set rngClickable = Me.Range("B2:B4")

    ' Проверьте, находится ли клик строго в диапазоне, где находятся ваши файл-ссылки
    If Not (Excel.Application.Intersect(rngClickable, Target) Is Nothing) Then

        ' Условие выполнено, запустите Google Chrome с переданным URL.
        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)

Надеюсь, это даст вам толчок к тому, что вы хотите сделать. Также обратите внимание на комментарий Ханну.

.

Ответ или решение

Как открыть Chrome из Excel с указанным "профилем пользователя"

Открытие браузера Google Chrome с использованием определённого профиля пользователя непосредственно из Excel может казаться непростой задачей, но с помощью интеграции VBA (Visual Basic for Applications) это можно сделать достаточно просто. Ниже приведено пошаговое руководство по реализации этой задачи.

Шаг 1: Установка реального пути к исполняемому файлу Chrome

Для начала вам нужно знать, где на вашем компьютере установлен Google Chrome. Обычно путь выглядит как:

C:\Program Files\Google\Chrome\Application\chrome.exe

Однако, если вы используете портативную версию Chrome или установили его в нестандартном каталоге, этот путь может отличаться. Проверьте ваш системный каталог для нахождения нужного chrome.exe.

Шаг 2: Подготовка ссылки на файл

Затем вам нужно иметь список файлов, которые вы хотите открыть. В вашем примере это файлы, находящиеся на рабочем столе:

C:\Users\User\Desktop\File1.txt
C:\Users\User\Desktop\File2.html
C:\Users\User\Desktop\File3.mhtml

Для того чтобы Chrome смог открыть эти файлы, их необходимо будет указать в формате URL, используя префикс file:///. Например:

file:///C:/Users/User/Desktop/File1.txt

Шаг 3: Написание кода VBA для открытия Chrome

Теперь, когда у вас есть путь к Chrome и список файлов, вы можете писать код на VBA. Откройте редактор VBA в Excel (нажмите ALT + F11) и создайте новый модуль. Вставьте следующий код:

Sub OpenBrowserFiles()
    Dim strGCPath As String
    Dim strUrlFile As String
    Dim cell As Range

    ' Путь к исполняемому файлу Google Chrome
    strGCPath = "C:\Program Files\Google\Chrome\Application\chrome.exe"

    ' Перебор каждой ячейки в указанном диапазоне и открытие файла в Chrome
    For Each cell In ThisWorkbook.Sheets("Sheet1").Range("A1:A3") ' Измените диапазон на ваш
        strUrlFile = "file:///" & Replace(cell.Value, "\", "/") ' Форматируем путь файла
        VBA.Shell strGCPath & " --profile-directory=Person1 -url " & strUrlFile
    Next cell
End Sub

Шаг 4: Обработка кликов по гиперссылкам в Excel

Если вы хотите сделать свою таблицу интерактивной, чтобы при щелчке по ячейке открывался файл в Chrome, добавьте следующий код в ваш лист Excel:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim strGCPath As String
    Dim rngClickable As Excel.Range

    strGCPath = "C:\Program Files\Google\Chrome\Application\chrome.exe"
    Set rngClickable = Me.Range("A1:A3") ' Замените на нужный диапазон

    If Not (Application.Intersect(rngClickable, Target) Is Nothing) Then
        Dim strUrlFile As String
        strUrlFile = "file:///" & Replace(Target.Value, "\", "/")
        VBA.Shell strGCPath & " --profile-directory=Person1 -url " & strUrlFile
    End If
End Sub

Этот код будет запускать Chrome с указанным файлом при каждом изменении выбора в заданном диапазоне.

Заключение

Теперь у вас есть инструкция по открытию Google Chrome с указанием конкретного профиля пользователя из Excel. Данная методология позволяет вам интегрировать браузер в ваши рабочие процессы, делая их более интерактивными и эффективными. Не забывайте проверить наличие установленного Chrome на всех устройствах, где будет использоваться этот макрос, так как в противном случае он не сработает.

Если у вас возникнут дополнительные вопросы или потребуется помощь, не стесняйтесь обращаться.

Оцените материал
Добавить комментарий

Капча загружается...