Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Запрос к нескольким xls одновременно (число прочтений - 2461 )
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Запрос к нескольким xls одновременно
10. Июля 2006 :: 12:33
Печать  
Возможно ли?

Для текстовых файлов нет проблем:
[code]DB = СоздатьОбъект("ODBCDatabase");
DB.Соединение("Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=C:\Temp\");

RS = СоздатьОбъект("ODBCRecordSet");
RS.SetDatabase(DB);

ТекстЗапроса = "
     |SELECT *
     |FROM
     |      [file1.csv] AS file1,
     |      [file2.csv] AS file2";

ТЗ = RS.ВыполнитьИнструкцию(ТекстЗапроса);
ТЗ.ВыбратьСтроки();
[/code]

А для xls такого не предусмотренно?
  
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запрос к нескольким xls одновременно
Ответ #1 - 10. Июля 2006 :: 15:04
Печать  
В догонку, можно ли обратиться к колонке, имеющей пробелы в наименовании, не используя "HDR=No"
  
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запрос к нескольким xls одновременно
Ответ #2 - 11. Июля 2006 :: 14:00
Печать  
Arta писал(а) 10. Июля 2006 :: 15:04:
В догонку, можно ли обратиться к колонке, имеющей пробелы в наименовании, не используя "HDR=No"


Ответ нашел, надо заключить ее название в квадратные скобки, например [Объем продаж]
  
Наверх
 
IP записан
 
Arta
1c++ power user
Отсутствует



Сообщений: 2537
Местоположение: Нижний Новгород
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Запрос к нескольким xls одновременно
Ответ #3 - 17. Июля 2006 :: 23:44
Печать  
Ну и на первый вопрос ответ нашел. Если вдруг кому понадобится то:

Код
Выбрать все
ТекстЗапроса = "
		|SELECT
		|	Material.*,
		|	Price.Price
		|FROM
		|	`\\tss\share\siemens\stock`.[Material$] Material
		|RIGHT OUTER JOIN
		|	`\\tss\share\siemens\Price_30_06_2006MP`.[Лист1$] Price
		|ON
		|	Material.PartNoMat = Price.PartNo
		|WHERE
		|	Material.ProdModel <> '' AND
		|	LEFT(Material.PartNoMat, 5) <> 'Dummy'
		|";
 



Кривее способа не видел Улыбка
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать