Обработка Range("a1:f10000") в Excele c помощью SQL - запросов. - VB

Узнай цену своей работы

Формулировка задачи:

Подскажите, пожалуйста, как работать с Range в Excel с помощью sql-запросов? Вот есть у нас Range("a1:f10000"). Посоветуйте, как в какую-нить переменную (должна после запроса будет содержать совокупность строк, удовлетворяющих условиям sql-запроса) закинуть что-то типа select * from <Range("a1:f10000") > where <значеніе_в_столбце_b>="Вася" and <значеніе_в_столбце_c>="xyz", чтобы с этой переменной было также легко работать с sql-запросами? Еще такой момент... Желательно, чтобы дополнительных компонент также в excel не требовалось устанавливать, т.к. экселевский VBA-код должен работать на любом компьютере, где есть стандартный Excel (практически любом).

Решение задачи: «Обработка Range("a1:f10000") в Excele c помощью SQL - запросов.»

textual
Листинг программы
  1. Set adoCn = CreateObject("ADODB.Connection")
  2. With adoCn
  3.     .Provider = "Microsoft.Jet.OLEDB.4.0"
  4.     .ConnectionString = _
  5.         "Data Source=d:MySpreadsheet.xls;" & _
  6.         "Extended Properties=Excel 10.0;"
  7.     .Open
  8. End With
  9.  
  10.  
  11. adoCn.ConnectionString = _
  12.         "Data Source=d:MySpreadsheet.xls;" & _
  13.         "Extended Properties=Excel 8.0;HDR=No;"
  14.  
  15.  
  16. Dim adoRs
  17. Set adoRs = CreateObject("ADODB.Recordset")
  18. strQuery = "SELECT * FROM Authors"
  19. With adoRs
  20.     Set .ActiveConnection = adoCn
  21.     .Open strQuery
  22. End With
  23.  
  24. SELECT * FROM [Sheet1$]
  25. SELECT * FROM Range1
  26. SELECT * FROM [Sheet1$E11:F23]
  27. adoCn2.Execute "INSERT INTO Таблица SELECT * FROM [Перемещение$]IN " & Chr(34) & Путь_к_файлу & Chr(34) & " " & Chr(34) & "Excel 8.0;" & Chr(34) & " Where [Перемещение$].[Поле] IS NOT NULL"

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.125 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут