Как открыть файл CSV через скрипт VBA в Powerpoint PPTM
У меня сложная презентация Powerpoint, которая в итоге экспортируется в виде отдельных слайдов через ISpringPro
Из-за процесса экспорта необходимо управлять навигационными ссылками между слайдами, чтобы отдельные экспортированные слайды могли переходить к другим.
Я пытаюсь написать сценарий VBA, чтобы позволить глобальный поиск и замену всех гиперссылок в PowerPoint.
Моя версия прототипа отлично работает, когда вы вводите один URL-адрес в поле ввода и второй URL-адрес во втором поле ввода для поиска и замены. Но я хотел бы просто прочитать всю эту информацию из файла CSV с двумя столбцами и посмотреть, как она выглядит в целом.
Теперь у меня проблемы с тем, чтобы VBA открывал файл CSV с помощью ADODB Connection. Я думаю, что я мог бы пропустить ссылку, но VBA действительно не моя сильная сторона.
Я вставил код ниже. но это взрывается на Set cn = New ADODB.Connection
говоря, что он не знает, что это за тип.
Я пропускаю какую-то ссылку на сборку?
With Application.FileDialog(msoFileDialogOpen)
.AllowMultiSelect = False
.Show
Dim csvPath As String
Dim csvFolder As String
csvPath = .SelectedItems(1)
csvFolder = StripFilename(csvPath)
Dim cn As Object
Dim rs As Object
Dim strsql As String
Dim col As Integer
strsql = "SELECT OLDURL,NEWURL FROM " & csvPath
Dim cn As ADODB.Connection, rs As ADODB.Recordset, f As Integer
Set cn = New ADODB.Connection
'On Error Resume Next
cn.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _
"Dbq=" & strFolder & ";" & _
"Extensions=csv,tab,txt;"
'On Error GoTo 0
If cn.State <> adStateOpen Then Exit Sub
Set rs = New ADODB.Recordset
'On Error Resume Next
rs.Open strsql, cn, adOpenForwardOnly, adLockReadOnly, adCmdText
'On Error GoTo 0
If rs.State <> adStateOpen Then
cn.Close
Set cn = Nothing
Exit Sub
End If
Dim iRet As Integer
For f = 0 To rs.Fields.Count - 1
iRet = MsgBox(rs.Fields(f).Name)
Next f
rs.Close
Set rs = Nothing
cn.Close
Set cn = Nothing
End With
1 ответ
Сотрите это.
Мне нужно было запустить Power Point от имени администратора, а затем в редакторе макросов перейти к
Инструменты> Рекомендации>
и добавьте ссылку на последнюю библиотеку объектов данных Microsoft ActiveX.