2013-11-25 3 views
0

У меня есть 9 листов, которые подключаются к различным таблицам в teradata, каждый раз, когда я обновляю его, я спрашиваю у меня свой идентификатор пользователя и PWD. Я вхожу в него 9 раз.Изменение строки подключения нескольких данных в excel

Я не знаком с VBA, но я написал код VBA для изменения строки подключения для электронной таблицы с одним подключением к данным. (Пожалуйста, найдите ниже код, который я использую).

Когда я использую этот код VBA для изменения строки подключения для электронной таблицы с помощью 9 подключений, я получаю «базу данных Teradata connect Pop-Up» и снова должен ввести свой идентификатор пользователя и PWD.

Может кто-нибудь объяснить, почему я получаю этот поп - чтобы ввести мой пароль или предоставить код VBA для изменения строки подключения в excel с помощью VBA или, пожалуйста, скажите мне, не делаю ли я что-то неправильно.

Благодаря Syam

Sub UPDATE() 

Dim ct As String 
Dim connect 
Dim ncon As String 
Dim nconr As String 

DSN = "GDWPROD2" 
'this checks number of data connection 
ct = ActiveWorkbook.Connections.Count 

While ct > 0 
Set i = ActiveWorkbook.Connections.Item(1) 
connect = i.ODBCConnection.Connection 
'checks for user id and password 
'CheckCredentials 
ncon = "ODBC;" & "DSN=" & DSN & ";UID=" & UID & ";PWD=" & PWD & ";" & "DATABASE=PROF_LEADS_VERDE;" 
i.ODBCConnection.Connection = ncon 
ct = ct - 1 
Wend 

ActiveWorkbook.RefreshAll 

End Sub 

ответ

0

Вы должны Dim как имя пользователя и пароль в виде строк, а затем установить их. Вы уже звоните им, но вы нигде не определили их. (Если вы не оставили это, когда вы разместили?)

Либо это, либо вы не можете назвать их, и он должен проверить, есть ли у вас разрешения на подключение автоматически. Для этого, однако, вы полностью не укажете имя пользователя и пароль и вместо этого введите Trusted_Connection=Yes;.

+0

Я определил его как Public UID As String Public PWD As String Public DSN As String – icurious

+0

Вы пытались использовать «Trusted_Connection»? Пока ваша учетная запись обычно имеет доступ, вы можете использовать ее вместо этого. Таким образом, вам не нужно вводить UID и PWD в свой код. – PermaNoob

+0

Эта таблица будет использоваться другими пользователями, так что вы не можете использовать trusted_connection, пожалуйста, совет? – icurious

Смежные вопросы