Я новичок в VBA, поэтому мне понадобится ваша помощь.
Что я хочу?
Код VBA, который открывает Данные> Свойства> Свойства соединения> Определениевыбранная таблица.
Не знаю, важно ли это, но я пытаюсь использовать таблицу, импортированную из SAS.
Что я пробовал?
Записатьмакрос для проверки необходимых шагов.
Проблема, которую я обнаружил?
Записанный макрос показывает шаги, которые мне нужны для выбранной таблицы, но ссылается на конкретное имя, а не на «активную таблицу».
Код записанного макроса:
Sub teste()
'
' teste Macro
'
'
Range("D4").Select
With ActiveWorkbook.Connections("(Default) MY_TABLE_NAME").OLEDBConnection
.BackgroundQuery = True
.CommandText = Array("MY_TABLE_NAME")
.CommandType = xlCmdTable
.Connection = Array( _
"OLEDB;Provider=MY_PROVIDER_LOCATION;Mode=Read|Sha" _
, _
"re Deny None;Use TK Manager Search Path=False;SAS Data Set Creation Code Page=0;SAS ValidMemName Read Update=False;SAS Adjust St" _
, "arting Date 1900=False")
.RefreshOnFileOpen = False
.SavePassword = False
.SourceConnectionFile = _
"MY_ODC_LOCATION"
.SourceDataFile = ""
.ServerCredentialsMethod = xlCredentialsMethodIntegrated
.AlwaysUseConnectionFile = False
End With
With ActiveWorkbook.Connections("(Default) MY_TABLE_NAME")
.Name = "(Default) MY_TABLE_NAME"
.Description = ""
End With
ExecuteExcel4Macro _
"(""(Default) MY_TABLE_NAME"",TRUE,FALSE,FALSE,TRUE,FALSE,TRUE,1,FALSE,TRUE,FALSE,0,TRUE,""MY_ODC_LOCATION"")"
End Sub