Требуется регулярно обновлять подключение к данным (подключение к SQL-серверу, состоящее из нескольких таблиц) в моей рабочей таблице Excel.Тем не менее, когда я выполняю «Обновить все», Excel в основном получает все данные с SQl-сервера с нуля и, следовательно, занимает много времени для извлечения данных.Я надеялся ускорить это, добавив только необходимые данные, а затем добавив их в мои таблицы в моем соединении.Есть ли способ сделать это с помощью VBA?
У меня есть лист Excel с подключением к серверу SQL, из которого я привожу несколько таблиц для создания динамических отчетов.Обновляя данные для добавления новых строк во все разные таблицы, Excel требует очень много времени для ввода данных, поскольку он получает все строки с сервера sql с нуля.Я надеялся, что смогу просто ввести новые данные, а затем передать их в таблицы в моем подключении к данным и обновить данные таким образом, используя скрипт VBA.Я наткнулся на код, чтобы получить необходимые данные с сервера SQL, но не нашел способа затем передать эти данные обратно в таблицы и обновить таблицы таким образом, вместо использования опции «обновить все» и избежать необходимости ждатьдолгое время.
Dim sConnString As String
Dim conn As ADODB.Connection
Dim rs As ADODB.Recordset
sConnString = "Provider=SQLOLEDB.1;Initial Catalog=WELLTHY_ALL;" & _
"User ID=username;Password=password;Data Source=NEWINSTANCE;"
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.Open sConnString
query = "SELECT * FROM table where date >" & " '2019-05-03'"
Set rs = conn.Execute(query)
Я хочу затем добавить эти данные, которые я получил выше в rs, в таблицу, купленную в excel через соединение, и избежать затратного по времени обновления всего метода