|
Запрос к xls | ☑ | ||
---|---|---|---|---|
0
Олеся999
19.07.17
✎
11:24
|
подскажите пожалуйста как запросом прочитать из эксель все колонки
от A до H ? Запрос = "SELECT * FROM [Лист1$A:B:C:D:E:F:G:H]"; так почему то не работает (( и как сделать допустим что бы колонка "A" грузилась в колонку тз которая называется "Номер", а колонка "B" грузилась в колонку тз которая называется "ФИО" итд. что то в роде: A AS Номер B AS ФИО |
|||
1
END
19.07.17
✎
11:25
|
А зачем запросом? Просто через OLE нельзя?
|
|||
2
Олеся999
19.07.17
✎
11:32
|
(1) Неа через ADODB.Connection делаю )
|
|||
3
END
19.07.17
✎
11:34
|
(2) Т.е. принципиально надо запросом? Вы же можете любую технологию использовать для общения с экселем - разве нет?
|
|||
4
Олеся999
19.07.17
✎
11:37
|
(3) Могу, но дело в том что на устройстве нет эксель. поэтому делаю так.
|
|||
5
xaozai
19.07.17
✎
11:37
|
Чисто предположение: )
SELECT A as Nmber, B as FIO FROM [Sheet1$] |
|||
6
PuhUfa
19.07.17
✎
11:38
|
||||
7
Олеся999
19.07.17
✎
11:45
|
(5) Так не будет работать:)
|
|||
8
VS-1976
19.07.17
✎
11:58
|
SELECT F1 as Nmber, F2 as FIO FROM [Sheet1$]
Так будет |
|||
9
xaozai
19.07.17
✎
12:05
|
(8) Да, так работает )
Накидал вот ради интереса: Процедура КнопкаВыполнитьНажатие(Кнопка)
|
|||
10
xaozai
19.07.17
✎
12:07
|
+(9) Или так строку можно заменить:
Сообщить("" + RecordSet.Fields("Nmber").value + " | " + RecordSet.Fields("FIO").value); |
|||
11
Олеся999
19.07.17
✎
12:15
|
Странно у меня пишет ошибка запроса
ТекстЗапроса = "SELECT | F1 as Номер, | F2 as ФИО | FROM [Лист1$]"; |
|||
12
Олеся999
19.07.17
✎
12:16
|
Так работает но добавляет только одну строку
ТекстЗапроса = "SELECT * FROM [Лист1$A:B]"; |
|||
13
xaozai
19.07.17
✎
12:18
|
(11) SELECT F1 as [Номер], F2 as [ФИО] FROM [Лист1$]
Ежели по-русски. |
|||
14
VS-1976
19.07.17
✎
12:23
|
(13) Вообще скобки нужны если в наименовании есть пробел, вроде как
|
|||
15
xaozai
19.07.17
✎
12:26
|
(14) Квадратные скобки обязательны, если имя не соответствует требованиям к идентификаторам, вроде как...
|
|||
16
VS-1976
19.07.17
✎
12:30
|
(15) С русским наименованием прокатывает. Системе побоку если это одно слово
|
|||
17
Олеся999
19.07.17
✎
12:32
|
(13) я что то попробовала, серавно ошибку запроса пишет
|
|||
18
xaozai
19.07.17
✎
12:34
|
(17) Ну, а что в описании ошибки?
|
|||
19
Олеся999
19.07.17
✎
12:38
|
(18) Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft Access Database Engine): Отсутствует значение для одного или нескольких требуемых параметров.
|
|||
20
xaozai
19.07.17
✎
12:40
|
(19) Так это не для запроса.
Это в строке подключения ошибка. |
|||
21
Олеся999
19.07.17
✎
12:46
|
(20) Нет по отладке посмотрела
полкл проходит, а валится на Выборка = Новый COMОбъект("ADODB.Recordset"); Попытка Выборка.Open(ТекстЗапроса, Connection); Исключение Сообщить ("Проблемы с выполнением запроса"); Сообщить (ОписаниеОшибки()); Возврат; КонецПопытки; |
|||
22
xaozai
19.07.17
✎
12:49
|
(12) Попробуйте как в (9).
|
|||
23
Олеся999
19.07.17
✎
12:54
|
(22) а так : Ошибка при вызове метода контекста (Execute): Произошла исключительная ситуация (Microsoft Access Database Engine): Отсутствует значение для одного или нескольких требуемых параметров.
|
|||
24
VS-1976
19.07.17
✎
12:59
|
(23)
пЗаголовок = ?( пЗаголовок, "Yes", "No" ); пConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=""" + пПутьКФайлу + """;Extended Properties=""Excel 12.0 Xml;HDR=" + пЗаголовок + """;"; Попытка пКоннектор = Новый COMОбъект( "ADODB.Connection" ); пКоннектор.ConnectionString = пConnectionString; Попытка пКоннектор.Open(); Исключение пКоннектор = Неопределено; Сообщить( "Не удалось подключиться к источнику." + Символы.ПС + ОписаниеОшибки() ); КонецПопытки; Исключение Сообщить( "Нет драйвера ADODB." + Символы.ПС + ОписаниеОшибки() ); КонецПопытки; |
|||
25
xaozai
19.07.17
✎
13:09
|
(23) Можт, это установить нужно: http://www.microsoft.com/download/en/details.aspx?id=23734
Это драйвер для работы с excel ч/з ADODB. |
|||
26
Олеся999
19.07.17
✎
14:33
|
(25) Установлено, так как выполняя этот запрос: ТекстЗапроса = "SELECT * FROM [Лист1$]";
добавляет строку, но почему то только одну |
|||
27
Олеся999
19.07.17
✎
14:39
|
(24) так она подключается :)
|
|||
28
Олеся999
19.07.17
✎
15:08
|
в предопределенные колонки записывает все как надо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |