powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Экспорт данных в Excel
25 сообщений из 63, страница 2 из 3
Экспорт данных в Excel
    #36543034
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотя я сейчас проверил - мне не помогает, всё равно при Union формулы пропадают.
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36543070
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121,

свойство ScreenApdating тоже использую часто, а вот Calculation -нет. Не было нужды, а может быть, не придавал должного значения. Спасибо за совет. Я уже говорил, что стараюсь не использовать формулы - и из-за такой их малопредсказуемости вот в таких случаях тоже.
P.S. Восстановил Вычисления=Автоматически, а они опять не пропадают! Компьютерный Бог им судья...
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36543080
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121Хотя я сейчас проверил - мне не помогает, всё равно при Union формулы пропадают.

я тоже проверил, пропали (
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36543111
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121,

есть совершенно дикий вариант - считывать формулы (c.Formula) в двумерный массив на каждом шаге цикла и вставлять их в уже другой диапазон на Листе5 в конце шага (можно и все скопом по завершении цикла). Считывать, конечно, только из тех строк, которые экспортируем. Заниматься этим нет ни времени, ни желания. Может, кто-нибудь возьмется? На больших таблицах будет ооочень долго.
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36543338
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zchvv,
но ведь формулы массива так не перенесёшь? Да и будут ли они потом работать? Тогда уж лучше просто копировать всю область целиком, а затем удалить строки с "0".
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36545428
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121,

согласен. Тогда код немного изменяется:
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36545452
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
zchvv,
тоже не плохо, вот только
MsgBox "Не получилось...!"
появляется, если нулей нет. Хотя и скопировал. Я не поленился, нули удалил :)
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36546091
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zchvvHugo121,

согласен. Тогда код немного изменяется:

zchvv , вы супер!!! То что нужно!!!
А почему в первом случае копировалось вместе со структурой (у меня строки были сгруппированы)
А в этом случае группировка пропадает???
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36546149
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikalex2,

из Вашего вопроса никак не следовало, что применяется структура. Поэтому никто и не думал о ней. Я думаю, не стоит тратить время на это, ведь структуру создать совсем недолго и нетрудно руками. Или спросите у асов VBA (у Hugo121, например). Мне как-то приходилось прописывать стуктуру, но в своей задаче все было предельно ясно.
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36546155
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В догонку: надеюсь, Вы исследовали код и поняли, что он всего лишь заготовка. Для достижения вашей цели его нужно творчески переработать. Например, на форму вынести номера 1-го (это необязательно буквально 1-й!) и последнего листа, с которых копируем. Также можно задавать номер листа, на котором собираем итоговую таблицу. И т.п.. Желаю успеха!
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36546227
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zchvvВ догонку: надеюсь, Вы исследовали код и поняли, что он всего лишь заготовка. Для достижения вашей цели его нужно творчески переработать. Например, на форму вынести номера 1-го (это необязательно буквально 1-й!) и последнего листа, с которых копируем. Также можно задавать номер листа, на котором собираем итоговую таблицу. И т.п.. Желаю успеха!

Да да Спасибо! Исследовал! Сижу уже дорабатываю!!!
Вот мне тока не понятно, сижу сравниваю оба кода, в первом случае со структурой копирует, а во втором без))) Непонятна... :-)
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36546248
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nikalex2,
в первом случае копировались строки листа. Поэтому поправьте так:
(m = r.Columns.Count - удалить можно)

For i = 1 To 4

Set r5 = Worksheets("List5").Range("A1").CurrentRegion
n5 = r5.Rows.Count

Set sh = Worksheets("List" & CStr(i))
Set r = sh.Range("A1").CurrentRegion
n = r.Rows.Count
m = r.Columns.Count
Set r = r.Offset(1, 0).Resize(n - 1, sh.Columns.Count)

r.Copy r5.Cells(n5, 1).Offset(1, 0)

Next i

Попробуйте и сообщите. Буду ждать, уже самому интересно. Целая баталия...
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36547449
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zchvv сделал как вы посоветовали!!! Теперь копирует вместе со структурой!!!
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36548977
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikalex2,

ОК. Всегда рад помочь.
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36550874
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zchvvnikalex2,

ОК. Всегда рад помочь.

zchvv а вы не в курсе возможно ли сделать следующее:

я присвоил ячейкам например A1 некое имя например SYSTEM1, ячейке A2 имя SYSTEM2, ячейке A3 имя SYSTEM3 и т.д. которые используются в формулах.
создал UserForm на которую поместил TextBox
так вот чтобы при запуске макроса Копирования (который Вы написали) выскакивала моя UserForm где в TextBox я бы вводил например SYSTEM2
и после этого во всех формулах ссылки менялись на SYSTEM2 ???

для понимания вопроса прилагаю пример
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36550917
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл прикрепить)))
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36551493
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikalex2!

Я не знаю, что Вы замыслили, но мне кажется, что Вы избрали слишком сложный путь. Скорее всего, все можно сделать проще. То, что Вы просили, я реализовал на скорую руку, дальше доработаете. Посмотрите код обработки нажатия кнопки. Там ищется позиция вхождения символа ",", хотя в русском варианте формулы фигурирует символ ";". У меня работает. Если у Вас будет выскакивать ошибка, замените в InStr() "," на ";". Если и так не будет работать, можно вынести этот код на обсуждение в новый топик.
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36551501
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл прикрепить :)
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36552141
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
zchvv!

Здравствуйте! Ваш код в принципе то что мне и нужно. Спасибо!
Попробовал применить в своей таблице, но возникла ошибка
в вашем примере на Листе1 я добавил формулу и вот на ней то и выдает ошибку
Ещё что заметил, так это то что меняются значения в формулах (которое я ввожу в TextBox) и на Листе1 и Листе10 А в моем случае необходимо чтобы на Листе1 не менялось а только копировалось с заменой на Лист10
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36553896
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте.

Переписал код под Ваш запрос. Вместо UserForm предлагаю использовать InputBox - он как раз для случая, когда нужно в программу ввести некоторое значение с тем, чтобы дальше использовать в программе.
Снова все на скорую руку, мало проверок. Доработаете. Пишите, отвечу (только по вечерам, работа...).
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36561664
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!

То что вы предлагаете подходит в моем случае, но есть одно но
мне необходимо чтобы он менял значения только в скопированных ячейках
т.е. я нажал один раз ввел на что мне необходимо поменять например SYSTEM4, заменилось и вставилось
нажал второй раз ввел SYSTEM4, заменилось и вставилось
а не во все листе
Возможно так???
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36561999
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, nikalex2.
Я тоже думал об этом, но не было с Вашей стороны четкой постановки.
Сейчас старый код закомментировал (для сравнения), новый проверил - работает так, как Вы говорите. Только мне непонятно: во всех скопированных строках фигурирует А3. А как надо?
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36562002
zchvv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Опять забып вложить файл.
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36562098
Valll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если ещё актуально, я поступил бы так.

1. Создал бы на доп.листе (можно скрытом) шаблон усиленного фильтра с фильтрацией по G<>0.
2. Цикл
Берётся первый лист, фильтруется, копируются видимые значения, вставляются в ИТОГОВЫЙ лист;
Считается кол-во заполненных строк - выделяется следующая...
Берётся второй лист, фильтруется (по тому же фильтру) , копируется, вставляется.

и так далее.

Всё очень быстро, так как всё заполнение идёт "пакетом", а не перебирается мелким циклом по строкам.
...
Рейтинг: 0 / 0
Экспорт данных в Excel
    #36563591
nikalex2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!

zchvv попробовал применить Ваш код, но...
под мою задачу не прошло :-(

у меня формулы типа =СУММЕСЛИМН(BASE!$O$2:$O$25000;BASE!$A$2:$A$25000;SYSTEM1;BASE!$D$2:$D$25000;"Duct";BASE!$E$2:$E$25000;"Гофр";BASE!$F$2:$F$25000;"100")

после того как запускаю ваш код формула приобретает вид =СУММЕСЛИМН(BASE!$O$2:$O$25000;SYSTEM2;"100")

т.е. часть формулы просто удаляется, соответственно ничего не работает :-(

Насчет А3, там тоже формула =SYSTEM... т.е. в этой ячейке тоже должно меняться на то значение которое я ввожу в InputBox

P.S. я в параметрах вычисления в настройках Excel устанавливаю "Вручную" (много формул, постоянное автоматическое вычисление занимает много времени), а после запуска кода он переключается на "Автоматическое" Непонятно.

Может мне скинуть Вам файл с моей задачкой??? Файл больше чем 100 кб, может Вам на email скинуть???

Valll я что то типа того что Вы предлагаете и пытаюсь осуществить. Т.е. у меня на одном листе создано что то типа ШАБЛОНА(который в процессе работы может меняться). Потом (когда ШАБЛОН будет окончательно доработан) необходимо его n-ое количество раз размножить в другой лист с заменой n-раз одного единственного условия в формуле (в моем случае это "SYSTEM")
Но что то не получается никак :-(

Заранее Всем благодарен!
...
Рейтинг: 0 / 0
25 сообщений из 63, страница 2 из 3
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Экспорт данных в Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]