|
|
|
| Собственно нужно закачать 2 колонки с определенного листа. Попытки вызвать сабж c параметром Range "Лист!B13:B229;Лист!E13:E229" не увенчались успехом. Подскажите, пожалуйста, как осуществить операцию, не прибегая к другим методам загрузки.
Заранее спасибо! | |
|
| |
|
|
|
| Видимо тка не получится. Я присвоил такому диапазону имя и попытался выполнить импорт. Это имя Access2000 не видит.
А что вам мешает вынести данные на другой лист и расположить колонки рядом? | |
|
| |
|
|
|
| Спасибо за ответ!
В общем случае эксель идет залоченным и добавлять листы нельзя.
Буду пробовать через АДО, если кто подскажет как - большое спасибо! | |
|
| |
|
|
|
| Предположим, есть файл C:\Book1.xls с листом Sheet1, на котором нас интересует диапазон
B3:E14.
Такой запрос в Access-e выводит весь диапазон, принимая верхнюю строку за имена полей:
SELECT * FROM [Sheet1$B3:E14] IN 'C:\Book1.xls'[Excel 5.0;HDR=YES;IMEX=1];
Такой запрос выводит 1-ю строку как 1-ю запись:
SELECT * FROM [Sheet1$B3:E14] IN 'C:\Book1.xls'[Excel 5.0;HDR=NO;IMEX=1];
В конструкторе запроса вы можете выбрать только требуемые поля, а также легко преобрзовать его в запрос на добавление или создание таблицы. | |
|
| |
|
|
|
| Круто, спасибо!
Это, так понимаю, используется Джет с ExtendedProperties="Excel хх".
А что значит IMEX ? Есть еще какие-либо параметры?
Эх, кабы он еще [Sheet1$B3:E14;Sheet1$F3:G14] понимал, цены б ему не было...
Еще раз спасибо! | |
|
| |
|
|
|
| IMEX, это импорт/экспорт. IMEX=1 - только импорт (чтение) из файла. 2 - и то, и другое. Если вам не нужно что-либо менять в источнике, то лучше 1. В связанных таблицах всегда 2.
>Эх, кабы он еще [Sheet1$B3:E14;Sheet1$F3:G14] понимал, цены б ему не было...
А зачем? Sheet1$B3:G14 - это таблица. Вы выбираете в запросе нужные поля, и всё.
Удачи! | |
|
| |