Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Скопировать данные с другого листа - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Скопировать данные с другого листа (Макросы/Sub)
Скопировать данные с другого листа
rever27 Дата: Воскресенье, 17.05.2015, 02:44 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 141
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Подскажите, как сделать макрос на копирование данных с одного постоянного листа Sheets("Временные данные") на другие листы?
Проблема в том, что их много разных и имя их я не могу задать в коде.
 
Ответить
СообщениеПодскажите, как сделать макрос на копирование данных с одного постоянного листа Sheets("Временные данные") на другие листы?
Проблема в том, что их много разных и имя их я не могу задать в коде.

Автор - rever27
Дата добавления - 17.05.2015 в 02:44
Serge_007 Дата: Воскресенье, 17.05.2015, 02:58 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Имя листа знать не обязательно (можно использовать номер листа), надо только проверить его наличие


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеИмя листа знать не обязательно (можно использовать номер листа), надо только проверить его наличие

Автор - Serge_007
Дата добавления - 17.05.2015 в 02:58
rever27 Дата: Воскресенье, 17.05.2015, 11:30 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 141
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Номер листа я тоже не могу знать, ибо добавляю их из другой книги, а каждый раз его вручную пересчитывать - проще руками все скопировать без макроса.
Нет ли функции - Запомнить активный лист. Далее перейти на нужны лист с данными, скопировать их и вернуться на активный, который мы запомнили?
 
Ответить
СообщениеНомер листа я тоже не могу знать, ибо добавляю их из другой книги, а каждый раз его вручную пересчитывать - проще руками все скопировать без макроса.
Нет ли функции - Запомнить активный лист. Далее перейти на нужны лист с данными, скопировать их и вернуться на активный, который мы запомнили?

Автор - rever27
Дата добавления - 17.05.2015 в 11:30
ShAM Дата: Воскресенье, 17.05.2015, 11:36 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1347
Репутация: 249 ±
Замечаний: 0% ±

Excel 2010
rever27, можете описАть, что Вы хотите? Иногда "переходить" и "возвращаться" не нужно. И файл приложить не забудьте согласно Правил Форума.
 
Ответить
Сообщениеrever27, можете описАть, что Вы хотите? Иногда "переходить" и "возвращаться" не нужно. И файл приложить не забудьте согласно Правил Форума.

Автор - ShAM
Дата добавления - 17.05.2015 в 11:36
rever27 Дата: Воскресенье, 17.05.2015, 12:44 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 141
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Дольше пример делать и умещал его в 100кб, чем описал бы словами.
Есть Лист Временные данные. Он всегда есть с этим названием.
К книге постоянно присоединяются дополнительные листы с разным названием.
Я хочу, чтобы после нажатия кнопки Вставить на листе, на место выделенной ячейки вставились все данные с листа Временные данные
К сообщению приложен файл: 6390520.xlsm (19.6 Kb)
 
Ответить
СообщениеДольше пример делать и умещал его в 100кб, чем описал бы словами.
Есть Лист Временные данные. Он всегда есть с этим названием.
К книге постоянно присоединяются дополнительные листы с разным названием.
Я хочу, чтобы после нажатия кнопки Вставить на листе, на место выделенной ячейки вставились все данные с листа Временные данные

Автор - rever27
Дата добавления - 17.05.2015 в 12:44
ShAM Дата: Воскресенье, 17.05.2015, 13:21 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1347
Репутация: 249 ±
Замечаний: 0% ±

Excel 2010
Ну, если:
на место выделенной ячейки вставились все данные с листа Временные данные
то попробуйте так:
[vba]
Код
Sub c_Paste_Forward1()
     Sheets("Временные данные").UsedRange.Copy
     ActiveSheet.Paste
End Sub
[/vba]
 
Ответить
СообщениеНу, если:
на место выделенной ячейки вставились все данные с листа Временные данные
то попробуйте так:
[vba]
Код
Sub c_Paste_Forward1()
     Sheets("Временные данные").UsedRange.Copy
     ActiveSheet.Paste
End Sub
[/vba]

Автор - ShAM
Дата добавления - 17.05.2015 в 13:21
rever27 Дата: Воскресенье, 17.05.2015, 16:26 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 141
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Работает, но нужно вставить именно Значения, сохраняя форматы.
На другом форуме прочитал: вместо activesheet.paste пишите activecell=target.value
Но у меня не работает


Сообщение отредактировал rever27 - Воскресенье, 17.05.2015, 16:35
 
Ответить
СообщениеРаботает, но нужно вставить именно Значения, сохраняя форматы.
На другом форуме прочитал: вместо activesheet.paste пишите activecell=target.value
Но у меня не работает

Автор - rever27
Дата добавления - 17.05.2015 в 16:26
ShAM Дата: Воскресенье, 17.05.2015, 18:46 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 1347
Репутация: 249 ±
Замечаний: 0% ±

Excel 2010
Работает, но нужно вставить именно Значения, сохраняя форматы.
На другом форуме прочитал: вместо activesheet.paste пишите activecell=target.value
Не бойтесь не только читать, но и экспериментировать. ;)
[vba]
Код
Sub c_Paste_Forward1()
     Sheets("Временные данные").UsedRange.Copy
     ActiveCell.PasteSpecial Paste:=xlPasteValues
     Application.CutCopyMode = False
End Sub
[/vba]А вдруг то,что надо %)
 
Ответить
Сообщение
Работает, но нужно вставить именно Значения, сохраняя форматы.
На другом форуме прочитал: вместо activesheet.paste пишите activecell=target.value
Не бойтесь не только читать, но и экспериментировать. ;)
[vba]
Код
Sub c_Paste_Forward1()
     Sheets("Временные данные").UsedRange.Copy
     ActiveCell.PasteSpecial Paste:=xlPasteValues
     Application.CutCopyMode = False
End Sub
[/vba]А вдруг то,что надо %)

Автор - ShAM
Дата добавления - 17.05.2015 в 18:46
rever27 Дата: Воскресенье, 17.05.2015, 19:48 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 141
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Шикарно. Все работает отлично! Спасибо!!!
Но раз уж пошла такая малина, то тогда более каверзный вопрос )

Как скопировать на листе "Временные данные" ячейки А1 и С3, умножить их на 2 и вставить на активный лист? )


Сообщение отредактировал rever27 - Воскресенье, 17.05.2015, 20:34
 
Ответить
СообщениеШикарно. Все работает отлично! Спасибо!!!
Но раз уж пошла такая малина, то тогда более каверзный вопрос )

Как скопировать на листе "Временные данные" ячейки А1 и С3, умножить их на 2 и вставить на активный лист? )

Автор - rever27
Дата добавления - 17.05.2015 в 19:48
ShAM Дата: Понедельник, 18.05.2015, 03:48 | Сообщение № 10
Группа: Друзья
Ранг: Старожил
Сообщений: 1347
Репутация: 249 ±
Замечаний: 0% ±

Excel 2010
вставить на активный лист
Вставить куда на активном листе? И за чем копи-паст, если работать с отдельными ячейками?
[vba]
Код
Sub aa()
     With Sheets("Временные данные")
         [a1] = .[a1] * 2
         [a2] = .[c3] * 2
     End With
End Sub
[/vba]
 
Ответить
Сообщение
вставить на активный лист
Вставить куда на активном листе? И за чем копи-паст, если работать с отдельными ячейками?
[vba]
Код
Sub aa()
     With Sheets("Временные данные")
         [a1] = .[a1] * 2
         [a2] = .[c3] * 2
     End With
End Sub
[/vba]

Автор - ShAM
Дата добавления - 18.05.2015 в 03:48
rever27 Дата: Понедельник, 18.05.2015, 12:19 | Сообщение № 11
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 141
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Очень интересная функция! Спасибо, буду разбираться
 
Ответить
СообщениеОчень интересная функция! Спасибо, буду разбираться

Автор - rever27
Дата добавления - 18.05.2015 в 12:19
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Скопировать данные с другого листа (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!