Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.05.2016, 16:28   #1
xamillion
Форумчанин
 
Аватар для xamillion
 
Регистрация: 30.09.2008
Сообщений: 138
Вопрос SQL запрос к книге Excel 2003

Уважаемые форумчане!
Попал в тупик в теме SQL запросов к книге Excel.
Имеем книгу с данными, некий готовый код VBA...
Необходимо обратится к столбцу А и сделать выборку по определенному значению. По имени "№ п/п" не работает, т.к. состоит не из одного слова. По столбцу "Код" работает.
В интернете почему-то совсем мало примеров.
Код и файл Excel прилагаю.
Заранее благодарен.

Код:
Dim myConnection As ADODB.Connection
    Dim myCommand As ADODB.Command
    Dim myRS As ADODB.Recordset
    Dim strCnn As String
    Dim strSQL As String
    
 
    Set myConnection = New ADODB.Connection
    strCnn = "Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=" & ThisWorkbook.FullName & ";DefaultDir=" & ThisWorkbook.Path & "\;"
    myConnection.Open strCnn
    
        
    Set myCommand = New ADODB.Command
    Set myCommand.ActiveConnection = myConnection
    
    
    myCommand.CommandText = "SELECT `RK$`.* FROM `RK$` where `RK$`.№ п/п = 61"
    
    ' а вот так работает!
    ' myCommand.CommandText = "SELECT `RK$`.* FROM `RK$` where `RK$`.Код = 61"
    ' чем заменить № п/п чтобы работало
    
    ' собственно быполнение SQL-запроса
    
    Set myRS = myCommand.Execute()
    
    Do Until myRS.EOF
    
                MsgBox myRS.Fields(1).Value

        
        myRS.MoveNext
    Loop
    
    myRS.Close
    myConnection.Close
End Sub
Вложения
Тип файла: xls RK.xls (82.5 Кб, 21 просмотров)
xamillion вне форума Ответить с цитированием
Старый 05.05.2016, 16:34   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
По имени "№ п/п" не работает
А в скобочках прямоугольных - [№ п/п]
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 05.05.2016, 17:23   #3
xamillion
Форумчанин
 
Аватар для xamillion
 
Регистрация: 30.09.2008
Сообщений: 138
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
А в скобочках прямоугольных - [№ п/п]
Все гениальное просто! А я уже и двойные ковычки и одинарные, а про квадратные скобочки не подумал ))))) Работает!
Спасибо!!!
P.S. А по номеру столбца никак нельзя? А то много точек в заголовках!

Последний раз редактировалось xamillion; 05.05.2016 в 19:19.
xamillion вне форума Ответить с цитированием
Старый 11.05.2016, 14:42   #4
xamillion
Форумчанин
 
Аватар для xamillion
 
Регистрация: 30.09.2008
Сообщений: 138
По умолчанию

В общем засада снова!
Добавил заголовки (колонки), пробую - а он говорит:"runtime error '94': invalid use of null ". Используются в колонке цифры и буквы.
xamillion вне форума Ответить с цитированием
Старый 11.05.2016, 15:31   #5
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Цитата:
Сообщение от xamillion Посмотреть сообщение
В общем засада снова!
Добавил заголовки (колонки), пробую - а он говорит:"runtime error '94': invalid use of null ". Используются в колонке цифры и буквы.
а файла добавить, может кто бы глянул одним глазком?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 11.05.2016, 19:00   #6
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

А так?
Код:
If Not IsNull(myRS.Fields(1).Value) Then  MsgBox myRS.Fields(1).Value
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Экспорт в Excel из Delphi через SQL запрос betirsolt БД в Delphi 1 19.05.2013 18:11
нужна формула по поиску заданного числа по всей книге (Excel 2003) bygaga Microsoft Office Excel 7 21.10.2011 10:33
SQL-запрос в excel, или импорт данных в word Sanek_81 Microsoft Office Excel 7 10.02.2011 14:40
как при импорте из Excel в delphi узнать сколько заполненных строк в книге Excel?чтобы организовать цикл betirsolt БД в Delphi 1 17.01.2010 18:51
Как запретить запуск программы на VBA Excel 2003 в Excel 2007 kovalevskivf Microsoft Office Excel 2 15.05.2009 16:47