|
|
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Не могу решить вопрос... В прикрепленном файле Excel несколько колонок с данными. С помощью мастера запросов SQL я извлекаю все данные в другую книгу. НО часть данных не извлекается. Причем есть какая то зависимость от 2ой строки. При определенных условиях извлекаются только числа при других только текст Мне необходимо чтобы вся информация и числа и текст и даты извлекались по запросу. И где можно почитать про это... Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2010, 19:49 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Нужно понять, что таблица Excel это не база данных и поэтому операции, применимые к базам данных применимы к нему только при определенных условиях. Поэтому, если хотите использовать запросы SQL, используйте в качестве хранилища данных СУБД, а не электронную таблицу. Вот и все, что можно по этому поводу прочитать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.11.2010, 20:57 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин Сочи, Вам нужно лист файла-источника преобразовать в таблицу БД. Насколько я понимаю, оставить только 1 строку , в кот-й будут названия столбцов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 07:03 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин СочиНе могу решить вопрос... В прикрепленном файле Excel несколько колонок с данными. С помощью мастера запросов SQL я извлекаю все данные в другую книгу. НО часть данных не извлекается. Причем есть какая то зависимость от 2ой строки. При определенных условиях извлекаются только числа при других только текст Мне необходимо чтобы вся информация и числа и текст и даты извлекались по запросу. И где можно почитать про это... Спасибо! Если извлекаемость зависит от содержимого, то у меня была аналогичная проблема. Суть проблемы в том, что при попытке извлечения данных из xls/csv заранее неизвестен тип поля содержащего данные, в частности число/не число и встроенный в винду JET, который и выполняет этот запрос, определяет тип содержимого по первым N записям. По умолчанию по 10 если я не ошибаюсь. Иными словами если первые 10 записей число, то тип поля воспринимается как числовое. И если в 11 строке будет текст, запрос "взорвется". Есть ключик в реестре, который позволяет этой глубиной управлять, беда в том, что он имеет ограничения по максимуму и мне лично игра с этим ключем не помогла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 09:47 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Кладовщик, дело в том, что мне необходимо при вызове обновления данных извлечь все что есть. А получается так: если во второй строке ,к примеру, находится число, то извлекаются с ряда только числа, если текст то извлекается текст. и.т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 12:54 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Так какой может быть здесь выход? Какие есть еще способы сплошного извлечения данных. Может быть макросом не открывая книгу-источник??? Или есть еще какие нибудь программы, приложения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 12:57 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Можно макросом открывать книгу, копировать все данный в нужную, и закрывать. При отключенном пересчете, обновлении экрана и на нормальном компе занимает не очень много времени. У меня 60 файлов по 3Мб открываются и закрываются менее чем за 20сек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 13:32 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
У меня 27 колонок данных и около 2-4 тыс строк. = 100 тыс ячеек. Из закрытой книги когда извлекает данные макросом, компьютер виснет... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 14:18 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
не понял к чему предыдущее? т.к. непонятно что вы делаете? Если нужна помощь опишите ситуацию, что нужно делать, что получить в итоге и что не получается. Приложите тестовый пример. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 14:30 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Вот результат запроса Select * from [ЗОЛОТО$], перед запуском удалил две верхние строки (или прибамбасы, или функциональность. Я всегда выбираю 2-е). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 19:05 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Прошу прощения. не тот файл прикрепил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 19:07 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Почему то в файле не заметил запроса... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 19:41 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Это именно результат запроса. Для формирования текстов запросов и их запуска у меня есть специально написанное приложение (используется ADO). А текст запроса я привел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 19:56 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Deggasad Проблема такая. Есть крупная база данных excel. Несколько лет работы... Так уж получилось что ряды данных содержат смешанные форматы (числа текст даты). Одни товары с артикулом - числом другие артикул-текст и.т.д. Переходить на реляционные базы не хочу. Поэтому проблема в том что запрос почемуто извлекает либо текст либо числа - в зависимости от содержания первых ячеек. Если средствами "query" это невозможно в принципе то как тогда??? Я других приложений не знаю. Макрос виснет после такого объема данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.11.2010, 21:52 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Ответил в дубликате темы: Запрос из внешнего источника xls Запросы не работают со смешанными типами данных, продолжать искать решение в этом направлении бесперспективно. Помогут только макросы. Если они есть и тормозят, то имеет смыл заняться из оптимизацией – выкладывайте код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2010, 04:33 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин Сочи, создать первых 10 записей, которые потом фильтром из запроса убирать. Но эти 10 записей должны однозначно описывать тип поля. Либо если хронология не важна, отсортировать такие записи вверх и всего делов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2010, 09:07 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Почти уверен что ваша проблема решается очень легко, но вы упорно пишете, что вам нужо чтобы правильно работал запрос, а я Вам говорю что запрос - всего лишь средство и прошу сделать тестовый пример: какие данные есть и какой результат должен получиться на выходе. Вам быстро помогут как только вы это сделаете и перестаните писать, что неработает запрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2010, 10:23 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин СочиDeggasad Проблема такая. Есть крупная база данных excel. Несколько лет работы... Так уж получилось что ряды данных содержат смешанные форматы (числа текст даты). Одни товары с артикулом - числом другие артикул-текст и.т.д. Переходить на реляционные базы не хочу. Поэтому проблема в том что запрос почемуто извлекает либо текст либо числа - в зависимости от содержания первых ячеек. Если средствами "query" это невозможно в принципе то как тогда??? Я других приложений не знаю. Макрос виснет после такого объема данных.ну, квери читает, как вы сами правильно заметили, лишь несколько полей, по которым пытается определять тип всего поля. я в своё вряемя тупо первую строку базы забивал строкой, в которой был текст, где текстовое поле или циферки, где числовое. попробуйте ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2010, 10:33 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Хорошо выкладываю образец еще раз. Все числовые данные извлекаются нормально за исключением текстовых значений в 8 колонке J:J "Артикул".Тут текст заменяется на Null. Если первая строка "артикул" будет числом то последующие числа все отображаются но теперь пропадают текст. Как кто то уже упомянул, запросы не работают со смешанными данными, а если это так то и не стоит в этом направлении голову ломать., не так ли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2010, 14:54 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин СочиХорошо выкладываю образец еще раз.спасибо большое, Константин Сочи, за выложенный 21 сообщением в топике пример!! наконец, вам можно помочь.. поменяйте формат столбца с артикулом на текстовый в базе данных и будет вам счастье =)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2010, 17:06 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Не целесообразно подстраиваться под разных поставщиков товаров. Одни выдают артикул цифровой другие текстовый. приходится их ставить в один ряд. Тысячи строк вводить потом менять форматы... А когда меняю форматы чисел на текст - перестают работать формулы подсчетов и.т.д. А вводить свой собственный формат, к примеру только числовой, тогда приходися печатать на товар этикетки с штрих-кодом внутренним. Вообщем это не решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2010, 19:18 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин Сочи.... Как кто то уже упомянул, запросы не работают со смешанными данными, а если это так то и не стоит в этом направлении голову ломать., не так ли. Так стоит голову ломать или нет, я что-то не пойму? Вы в итоге опять написали какая есть проблема, но не указали желаемый результат? Вы наверное никогда не родите поэтому спрошу сам: Правильно ли я понимаю задачу, что по нажатию кнопки "обновить" в книге "Книга с запросом" все данные исходного листа в книге "база" должны перенестись на лист1 в книгу "Книга с запросом"? или может быть нужно чтобы запрос заработал правильно и другие варианты не рассматриваются? З.ы.: поле таки можно сделать текстовым полностью и все формулы сделать чтобы корректно работали и все остальное, если хотите это тоже можно отдельно обсудить, вы просто ничего не хотите толком ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.11.2010, 19:52 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Так как требуется импорт всех данных, аналогично запросу SELECT * FROM …, то для быстрого импорта смешанных типов данных из закрытого Excel файла можно воспользоваться комбинацией макроса и недокументированным свойством Excel-формул возвращать массив данных из внешнего источника. Пример приложен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 05:39 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Deggasad спасибо конечно но Я же уже скока раз повторил свою проблему. Запрос отсеивает половину данных, так как где то числа где то текст. Самому менять в источнике числа на текст или текст на числа это нецелесообразно, Да и сам замысел не тот чтобы подстраиваться под всех и под каждый случай. Вот ZVI решил эту проблему макросом четко. 1 секунда и все данные в книге (и неважно в каком они там виде записаны) ... Спасибо всем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 11:04 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=36942033&tid=2177461]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
193ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
84ms |
get tp. blocked users: |
2ms |
| others: | 245ms |
| total: | 575ms |

| 0 / 0 |
