|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
23.11.2014, 21:10 | #1 |
Регистрация: 23.11.2014
Сообщений: 4
|
Перенос определенной строки на другой лист
Добрый день!
Нужна помощь в доводке программы. Есть задача создать таблицу для контроля сроков по разным делам. Опыта работы с Экселем небольшой (на уровне сложить ячейки и т.п.), с VB и макросами - 4 дня, так что не судите строго. То, что получилось создать - во вложенном файле. На листе "Текущие данные" - дела в работе, пока на них не будет дан ответ. Они сортируются по "ответственным", "дате до срока" и т.п.. Вобщем шеф ведёт по ним контроль и выдаёт пряники там кто опаздывает по срокам. По получении ответа - дело с текущего контроля отправляется в архив (вырезается с листа "текущий контроль" и вставляется на лист "Архив" при этом нижние строки занимают свободное место) Что не получается - не могу грамотно реализовать перенос готовых данных. Текущих данных порядка 100-140, поэтому строк взято с запасом 150. "Кнопок переноса" соответственно 150, они сгруппированы, поэтому при постоянных сортировках не сбиваются. но у каждой свой макрос (свои данные переноса строк). На копировании и изменении сорокового макроса стало тоскливо и понятно что должно быть какое-то более простое и изящное решение. Как, может быть разгруппировав и привязав к ячейкам или как-то иначе, сделать на все эти кнопки один макрос или т.п. чтобы при нажатии на кнопку он сам определял в какой строке в текущий момент находится кнопка(в результате сортировок она может оказаться в любом месте 1-150), соответственно переносил в "Архив" ту текущую строку в которой она сейчас находится. |
23.11.2014, 22:22 | #2 |
Форумчанин
Регистрация: 14.02.2009
Сообщений: 753
|
Лучше иметь одну кнопку, а переносить данные из строки с активной ячейкой
Выделил любую ячейку в нужной строке и нажал кнопку Код:
Код:
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru |
23.11.2014, 22:34 | #3 |
Регистрация: 23.11.2014
Сообщений: 4
|
Алекс, Спс за решение, сейчас буду тестировать, но вот беда, я то это сам понимаю (про наличии активной ячейки в нужной строке), сам бы просто вырезал и вставлял посредствам КонтрЦ-КонтрлВ, но в канцелярии сидят люди которые Мышку то в первый раз видят, а уж просить "просто нажимать на любую ячейку в нужной строке" перед переносом - для них за гранью фантастики...
Правильно ли я понимаю, что никакая функция (или т.п.) не меняет своих данных при нажатии кнопки (принимая определенные данные или адрес ячейки в которой данная кнопка расположена)? Но в любом случае 1 макрос лучше 150.... спс, пошёл тестить Последний раз редактировалось Skorpika; 23.11.2014 в 22:43. |
23.11.2014, 22:41 | #4 | |
Регистрация: 23.11.2014
Сообщений: 4
|
Цитата:
не просто "Перенести в архив текущую запись?", а "Перенести запись 111ж Иванов И.И. от 17,11,14 в архив?", где 111ж Иванов И.И. от 17,11,14 будут данными из переносимой строики. |
|
23.11.2014, 23:12 | #5 |
Форумчанин
Регистрация: 23.01.2010
Сообщений: 261
|
Тупо переделал Ваш макрос как смог. Тыкните мышем в столбец L. Перезагрузил файл.
Последний раз редактировалось gling; 23.11.2014 в 23:22. |
23.11.2014, 23:12 | #6 |
Форумчанин
Регистрация: 14.02.2009
Сообщений: 753
|
Код:
помогу решить контрольные VB6, VBA (недорого)
Alex77755@mail.ru |
24.11.2014, 00:28 | #7 |
Регистрация: 23.11.2014
Сообщений: 4
|
Alex, gling, Спасибо.
|
16.12.2020, 14:33 | #8 |
Новичок
Джуниор
Регистрация: 16.12.2020
Сообщений: 2
|
Здравствуйте, кто может поможет написать макрос переноса определённых строк в новую книгу! Нужно отфильтровать строки по "названию" и эти строки вкинуть в новую книгу. Но изначальный документ объёмный около 150000 строк. Как можно реализовать макрос в таком случае?
Нашёл что то похожее но не совсем: Sub Название_Макроса() 'Выделить диапазон который необходимо скопировать Range("A1:F52").Select - вот здесь нужно отфильтровать строки по названию в одном из столбцов 'Скопировать то, что выделено Selection.Copy ChDir "путь к папке где лежит файл в который необходимо скопировать" - можно просто сохранить в новую книгу по пусти C:\Temp Workbooks.Open Filename:= "Название файла, который находится в папке, путь к которой указан выше" 'Выделить начальную ячейку в которую необходимо вставить скопированные данные Range("A1").Select 'Вставить данные ActiveSheet.Paste 'сохранить текущую книгу ActiveWorkbook.Save 'Закрыть книгу ActiveWorkbook.Close End Sub Последний раз редактировалось dkorsachev; 16.12.2020 в 14:41. |
16.12.2020, 15:08 | #9 | |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
- Запустить макрорекордер,
- произвести действия Цитата:
Кнопки "новая тема" не нашел?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
|
16.12.2020, 15:26 | #10 |
Новичок
Джуниор
Регистрация: 16.12.2020
Сообщений: 2
|
А зачем плодить кучу тем если эта похожа на мою. В документе слишком много строк и макрорекордером не получается отфильтровать такое количество строк, тем более в столбце в котором фильтрую в ячейках не два слова написано, выдаёт ошибку уже на 190 строк too many line continuations
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
перенос строки на другой лист по условию | TimoXEi | Microsoft Office Excel | 12 | 24.01.2013 16:21 |
перенос данных на другой лист | vorimid | Microsoft Office Excel | 11 | 03.06.2012 19:23 |
Перенос строки в другой лист | _Fish_ | Microsoft Office Excel | 5 | 29.02.2012 10:52 |
Выборка данных, перенос строки на другой лист) | Viten2 | Microsoft Office Excel | 1 | 03.05.2011 16:14 |
перенос данных на другой лист | Jonny B | Microsoft Office Excel | 15 | 26.04.2011 09:16 |