|
|
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
ZVI, МегаКруть, не думал о таком (хотя давно хотел что-то подобное смастерить), не знаю насколько быстрее от всех остальных вариантов (например непрерывный массив формул сделать), но мне нравится сохраню для коллекции Единственное зачем вот эта строка? Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 11:20 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин СочиDeggasad спасибо конечно но Я же уже скока раз повторил свою проблему... ... Вот ZVI решил эту проблему макросом четко... Товарисч, ZVI решил проблему обозначенную мной, на основании вымученного мной же примера, поэтому не очень понятно ваше ...,НО... в обращении ко мне. Константин Сочи... Спасибо всем. Приму это на свой счет, чтобы не думать о тебе плохо. З.ы.: единственный минус быстрого решения ZVI - ты так и не научился задавать вопрос :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 11:27 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
ZVIТак как требуется импорт всех данных, аналогично запросу SELECT * FROM …, то для быстрого импорта смешанных типов данных из закрытого Excel файла можно воспользоваться комбинацией макроса и недокументированным свойством Excel-формул возвращать массив данных из внешнего источника. Пример приложен. А не сложно подсказать где в этом коде прописать путь к файлу "База1" если к примеру он на другом диске. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 12:13 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
DeggasadКонстантин СочиDeggasad спасибо конечно но Я же уже скока раз повторил свою проблему... ... Вот ZVI решил эту проблему макросом четко... Товарисч, ZVI решил проблему обозначенную мной, на основании вымученного мной же примера, поэтому не очень понятно ваше ...,НО... в обращении ко мне. Константин Сочи... Спасибо всем. Приму это на свой счет, чтобы не думать о тебе плохо. З.ы.: единственный минус быстрого решения ZVI - ты так и не научился задавать вопрос :( Ничего плохого ни кому не желаю. :) Наоборот Вы все - Светлые головы, спасибо Вам за общение... и помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 12:17 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Degassad, спасибо за «МегаКруть» :-) Тоже гадал дописывать или очищать и проч., но решил на основе Вашего видения задачи привести вариант без заморочек, чтобы показать сам принцип. Выравнивание ширины столбцов с помошью .Columns.AutoFit – это для удобства, не принципиально конечно. Константин, приложил вариант с переменой XlsFilePath, в которой можно прописать папку с XLS-файлом данных. Можно вызывать и диалоговое окно для выбора файла данных, но это уже нехитрое дело. Нужно учитывать, что форматирование ячеек, куда производится импорт приведенным методом, нужно делать самостоятельно либо вручную, как у меня в примере, либо кодом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 16:39 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
ZVIDegassad, спасибо Извиняюсь за опечатку, Deggasad ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 16:41 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
ZVIDegassad, спасибо за «МегаКруть» :-) Тоже гадал дописывать или очищать и проч., но решил на основе Вашего видения задачи привести вариант без заморочек, чтобы показать сам принцип. Выравнивание ширины столбцов с помошью .Columns.AutoFit – это для удобства, не принципиально конечно. Константин, приложил вариант с переменой XlsFilePath, в которой можно прописать папку с XLS-файлом данных. Можно вызывать и диалоговое окно для выбора файла данных, но это уже нехитрое дело. Нужно учитывать, что форматирование ячеек, куда производится импорт приведенным методом, нужно делать самостоятельно либо вручную, как у меня в примере, либо кодом. Опять вопрос? В книге с кодом импорта данных 2листа - соответсвенно нужно два модуля с разными запросами. т.е. на одном листе запрос с листа 1 книги, а на другом листе запрос с листа 2 книги. Что то сам добавляю модуль с кодом и перестает работать первый. И какой код прикреплен на кнопке "VBA code", и где он спрятан??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.11.2010, 17:51 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Чтобы задать лист, куда импортировать, достаточно было в строке с With ThisWorkbook.Sheets(1).UsedRange вместо единицы в круглых скобках вписать требуемый номер листа или имя листа в двойных кавычках. Для большей гибкости переписал процедуру с аргументами вместо констант - см. приложение. Теперь совершенно очевидно как изменить вызов процедуры под конкретные нужды. Константин, похвально, если Вы хотите научиться VBA. Но ошибки при этом неизбежны, и не нужно их стесняться, потому что разбор своих ошибок чуть ли не лучшая школа. Выкладывайте файл с кодом, показывайте, где что « перестает работать », и Вам помогут разобраться и исправить ошибки. Если же нет времени/желания/возможности/смысла изучать VBA, то тоже всё нормально - не всем это нужно в жизни. Но тогда лучше явно написать, что требуется не помощь в исправлении ошибок кода или формул, а полное решение такой-то проблемы. Часто и в этом случае кто-то «подрывается» решить проблему, в крайнем случае, подскажут, где её быстро могут решить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2010, 03:07 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
ZVI Если же нет времени/желания/возможности/смысла изучать VBA, то тоже всё нормально - не всем это нужно в жизни. Но тогда лучше явно написать, что требуется не помощь в исправлении ошибок кода или формул, а полное решение такой-то проблемы. Часто и в этом случае кто-то «подрывается» решить проблему, в крайнем случае, подскажут, где её быстро могут решить. Спасибо ZVI работает все быстро , но опять интересная проблемка. так как данных очень много, есть значения в виде текста типа "68E88" при импорте данных если в ячейке книги с запросом формат данных как "текст" то Excel читает как " 6,8Е+89" Если формат ячейки цифровой то отображается результат как 68 и 89 нолей...(6800000000000000000000000000000000000000000... Есть какие нибудь мысли по поводу такого ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2010, 16:42 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин Сочи... так как данных очень много, есть значения в виде текста типа "68 E 88" при импорте данных если в ячейке книги с запросом формат данных как "текст" то Excel читает как " 6,8 Е +89"... Есть какие нибудь мысли по поводу такого Вы же сами хотели смешанных типов данных :-) В данном случае Excel по своим встроенным правилам определяет, что записано число в экспоненциальной форме, а не текст. Если использовать русскую букву Е вместо английской, или с двух строн ставить двойные кавычки, то воспримется как текст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.11.2010, 19:21 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Deggasad, Ваш вариант – супер! Сохранил в своей коллекции :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2010, 02:43 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
ZVIDeggasad, Ваш вариант – супер! Сохранил в своей коллекции :-) спасибо. надеюсь Ваша коллекция хранится лучше чем моя, а то я недавно похерил все нажитое непосильным трудом - разбился внешний жесткий диск, а копии не было ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2010, 08:43 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
"='Z:\Files\[base1.xls]ОТЧЕТ'!$E$30" Есть вот такая формула ну и похожие на эту. Эти формулы извлекают данные из другой книги. И при открытии книги формула не может быть вычислена. Сначала открывается окно с поиском данного файла книги, затем прописываеш путь к книге. Вопрос: есть ли решение чтобы програмно формула обновлялась без моей помощи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2010, 09:51 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин Сочи, юзайте поиск по фразе получение данных из закрытой книги ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2010, 10:18 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
ZVI MixedDataImport "=\\Pentium\Bases\", "Test.xls", "Лист1_Data", ThisWorkbook.Sheets(1). Range("A1") Подскажите пожалуйста: Где ошибка: файл находится на другом компе в единой рабочей группе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.11.2010, 12:20 |
|
||
|
кто подскажет очень нужно???
|
|||
|---|---|---|---|
|
#18+
Константин СочиZVI MixedDataImport "=\\Pentium\Bases\", "Test.xls", "Лист1_Data", ThisWorkbook.Sheets(1). Range("A1")Константин, знак равенства не нужен при вызове функции, т.е. вместо " = \\Pentium\Bases\" нужно "\\Pentium\Bases\" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2010, 15:14 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=36953272&tid=2177461]: |
0ms |
get settings: |
5ms |
get forum list: |
10ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
150ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
73ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 462ms |

| 0 / 0 |
