Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.02.2013, 09:48   #1
ссержа
 
Регистрация: 31.01.2013
Сообщений: 3
По умолчанию Макрос переноса строки из одного листа в другой

Здравствуйте уважаемые форумчане! Оч срочно нужна помощь решить задачу (готового не нашёл а на переделку и вникание потратил неделю и толку никакого).
Задача простая (просто я не сталкивался с макросами).
Есть книга с Лист1 Лист2 и т д В листах происходят некие вычисления -данные сводятся в определённую строку (строка одна и та же например №18)
Нужена кнопка (макрос) при нажатии на которую эта строка №18 копировалась на другой лист (например Лист10)этой же книги. Т е такая копка будет в каждом листе с вычислениями (Листы1-5) а строки копироваться из Листов1-5 на Лист10 одна под другой. Перенос с листов 1-5 будет выборочный .Т е не все листы нужно заносить в Лист10. При копировании повторяющейся детали (яч№2 ) нужно присвоить индекс типа "деталь 1"
В перспективе листов с вычислениями будет штук100.И надо будет управление переносом свести в какойто главный лист.Но тут срочность важна поэтому упростил задачу специально...Очень благодарен если кто откликнется...!!!!
ссержа вне форума Ответить с цитированием
Старый 03.02.2013, 11:59   #2
Скрипт
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 776
По умолчанию

ссержа, сформируйте Excel-книгу с примерными данными, выложите эту книгу на Форуме и на примере этой книги поясните, какой должен быть результат.
Скрипт вне форума Ответить с цитированием
Старый 03.02.2013, 13:55   #3
ссержа
 
Регистрация: 31.01.2013
Сообщений: 3
По умолчанию

Сорри вот пимер чего должно получиться.Ещё потом на том листе в который копируются строки тоже макрос переводящий этот список в текстовый формат с разделительными табуляциями (переводить нужно только таблицу -без суммы внизу)
Вложения
Тип файла: txt пример.txt (70 байт, 197 просмотров)
Тип файла: rar пример.rar (1.9 Кб, 56 просмотров)
ссержа вне форума Ответить с цитированием
Старый 03.02.2013, 20:12   #4
Скрипт
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 776
По умолчанию

ссержа, я сделал кнопки только для двух листов. По аналогии сделайте кнопки для остальных листов.
Данные вставляются на последний лист.
Про выгрузку данных в текстовый файл, я не смотрел.
Вложения
Тип файла: zip пример_v_2.zip (17.0 Кб, 199 просмотров)
Скрипт вне форума Ответить с цитированием
Старый 04.02.2013, 09:30   #5
ссержа
 
Регистрация: 31.01.2013
Сообщений: 3
По умолчанию

Просто супер!! Всё работает !Спасибо огромное лично Вам Скрипт!
Если можно -нужна небольшая доделка.Выяснилось что некоторые листы (которых будет штук 100) ну из которых надо переносить строку будут содержать этих строк до 15штук одна под другой.Т е перенос нужно будет
делать (в общем случае) когда одну строку а когда 15 сразу.Пытаюсь разобраться сам но мало времени....Просто уже надо внедрять всё это...
Заранее благодарен в любом случае
ссержа вне форума Ответить с цитированием
Старый 04.02.2013, 11:01   #6
Скрипт
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 776
По умолчанию

ссержа, чтобы упростить написание кодов, я разбил VBA-код на два независимых макроса.
Первый макрос переносит данные с активного листа на последний лист.
Второй макрос - присваивает порядковые номера.

Перед запуском первого макроса, сделайте активной или выделите несколько ячеек в столбце "B" (с клавишей Ctrl не выделяйте), которые нужно скопировать на последний лист.

Для запуска второго макроса, в VBA сделайте следующее:
Tools - References... - Microsoft Scripting Runtime.
Перед запуском второго макроса, просто сделайте активным последний лист.

Чтобы на каждом листе не делать кнопку для вызова макроса, сделайте кнопку на Панели инструментов.

Чтобы поместить коды, которые я выложил, в VBA:
  1. разархивируйте коды;
  2. перейдите в VBA;
  3. File - Import Files...
Вложения
Тип файла: zip VBA-коды.zip (2.8 Кб, 98 просмотров)
Скрипт вне форума Ответить с цитированием
Старый 08.02.2013, 22:39   #7
deatmach
 
Регистрация: 22.06.2012
Сообщений: 9
Сообщение фцв

Цитата:
Сообщение от Скрипт Посмотреть сообщение
ссержа, я сделал кнопки только для двух листов. По аналогии сделайте кнопки для остальных листов.
Данные вставляются на последний лист.
Про выгрузку данных в текстовый файл, я не смотрел.
А можно ли то-же самое , только не одну строку и столбец , а(например выделенное ) несколько строк и столбцов?

Последний раз редактировалось deatmach; 08.02.2013 в 22:49. Причина: а, всё всё изменил
deatmach вне форума Ответить с цитированием
Старый 04.04.2016, 15:03   #8
AlexLin
Новичок
Джуниор
 
Регистрация: 04.04.2016
Сообщений: 2
По умолчанию

Добрый время суток!
У меня возникла проблема с макросом переноса строки из одного листа в другой.
А именно макрос работает переносит с "Ввод результатов испытаний" интервал С1:С48 в данные но переносит в столбик, а мне надо в строчку. В "данные" с А4:AP4 и следующие данные с А5:AP5.
?Подскажите пожалуйста как написать макрос.

Sub uuu()
With Sheets("Ввод результатов испытаний").Range("C1:C48")
Sheets("данные").Range("A4").Resize (.Rows.Count, .Columns.Count) = .Value

lr = .Cells(Rows.Count, 1).End(xlUp).Row
If .Cells(lr, 1) = Date Then
.Cells(lr, 1).Resize(1, 3) = arr
Else: .Cells(lr + 1, 1).Offset(1, 0).Resize(1, 3) = arr
End If
MsgBox "Сделано"
End With
End Sub
AlexLin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос переноса данных с одного листа на другой в определенной последовательности Виктория1986 Microsoft Office Excel 4 23.12.2012 23:42
макрос для копирования строк из одного листа в другой если функция не ровна "" rodgerr86 Microsoft Office Excel 0 04.07.2012 00:12
Формула для переноса значения с одного листа на другой Олег197709 Microsoft Office Excel 12 12.07.2010 10:52
Удаление активой строки с одного листа на другой MilanAC Помощь студентам 0 28.04.2010 22:08
Проблема переноса строк из одного списка (Listbox) в другой. hip3r Win Api 4 13.10.2009 11:59