Подключение Excel к Visio

Я пытаюсь, чтобы Visio считал данные из Excel и создал рисунок на Visio на основе информации в электронной таблице. Нашел этот пример, который использует Access и C#, чтобы сделать то, что я пытаюсь сделать. Кто-нибудь может мне помочь с этим? Я начал с создания соединения в Excel с Visio и уже застрял. Visio продолжает выдавать мне ошибку "Невозможно подключиться к данным". Вот что у меня пока

Const excelFileName As String = "<C:\Users\Documents\Book2>"

Public Sub DrawVisio()

Dim doc As Visio.Document
Set doc = ActiveDocument

Dim cmd As String
Dim conString As String
Dim drs As Visio.DataRecordset

conString = "Provider=Microsoft.ACE.OLEDB.12.0;" & _
             "User ID=Admin;" & _
             "Data Source=" & excelFileName & ";" & _
             "Mode=Read;" & _
             "Extended Properties=""HDR=YES;IMEX=1;" & _
             "MaxScanRows=0;Excel 12.0;"";" & _
             "Jet OLEDB:Engine Type=34;"
    cmd = "select * from `Sheet1$`"
    Set drs = doc.DataRecordsets.Add(conString, cmd, 0, "Sheet1")

1 ответ

Dim xlWorkBookName As String
xlWorkBookName = "WorkbookName.xlsm"

Dim xlApp As Excel.Application
Set xlApp = CreateObject("excel.application")

Dim pathExcel As String
pathExcel = Visio.ActiveDocument.Path & xlWorkBookName

Dim XlWrkBook As Excel.Workbook
Set XlWrkBook = xlApp.Workbooks.Open(FileName:=pathExcel)
xlApp.Visible = True

Dim XlWrkSheet As Excel.Worksheet
Set XlWrkSheet = XlWrkBook.Sheets.Item("WorksheetName")
XlWrkSheet.Activate
Другие вопросы по тегам