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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.07.2011, 14:05   #1
СветланаЛеонидовна
 
Регистрация: 22.04.2010
Сообщений: 7
По умолчанию VBA Копирование эелементов управления и изображений

Есть лист Excel на котором есть различные данные в том числе элементы управления и изображения. Как скопировать с одного листа все элементы на другой. С копированием значений, форматов и шириной столбцов разобралась. метод PasteSpecial. А вот с изображениями и элементами управления загвоздка!
СветланаЛеонидовна вне форума Ответить с цитированием
Старый 04.07.2011, 14:06   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

А почему бы, в таком случае, не скопировать лист целиком?
Это же одна строка кода...
EducatedFool вне форума Ответить с цитированием
Старый 04.07.2011, 14:41   #3
СветланаЛеонидовна
 
Регистрация: 22.04.2010
Сообщений: 7
По умолчанию

Не подскажите строку?
СветланаЛеонидовна вне форума Ответить с цитированием
Старый 04.07.2011, 14:44   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Sheets(1).Copy After:=Sheets(Sheets.Count)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 04.07.2011, 14:53   #5
СветланаЛеонидовна
 
Регистрация: 22.04.2010
Сообщений: 7
По умолчанию

данная строка почему то не работает.
что то происходит, но лист не появляется ни после всехлистов, ни после копируемого!

xlBook.Sheets(23).Copy After:=xlBook.Sheets(Sheets.Count)
СветланаЛеонидовна вне форума Ответить с цитированием
Старый 04.07.2011, 15:01   #6
СветланаЛеонидовна
 
Регистрация: 22.04.2010
Сообщений: 7
По умолчанию

Извиняюсь за предыдущий пост. Счетчик листов работает странно, и листы копировались куда в середину всех листов!
СветланаЛеонидовна вне форума Ответить с цитированием
Старый 04.07.2011, 15:28   #7
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Попробуйте так - и лист вставится последним:
Код:
xlBook.Sheets(23).Copy After:=xlBook.Sheets(xlBook.Sheets.Count)
EducatedFool вне форума Ответить с цитированием
Старый 04.07.2011, 15:52   #8
СветланаЛеонидовна
 
Регистрация: 22.04.2010
Сообщений: 7
По умолчанию

Спасибо! С этим я разобралась.. Можете мне подсказать в этой теме, как создать новый Excel файл с заданным именем с помощью VBA из другого листа (грубо говоря схема такая: нажала кнопку, создался файл, в него скопировался лист).. с копированием разобраласб, спасибо!
СветланаЛеонидовна вне форума Ответить с цитированием
Старый 04.07.2011, 15:53   #9
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Очень просто:
Код:
xlBook.Sheets(23).Copy
Если мы не указываем в параметрах, куда производить вставку - лист копируется в новую книгу.
EducatedFool вне форума Ответить с цитированием
Старый 04.07.2011, 15:56   #10
СветланаЛеонидовна
 
Регистрация: 22.04.2010
Сообщений: 7
По умолчанию

Так мне надо задать имя и расположение нового файла.
СветланаЛеонидовна вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
копирование изображений из закрытого файла в активный лист Jargunkin Microsoft Office Excel 1 01.03.2011 00:00
Редактирование изображений на VBA ShAI Microsoft Office Excel 4 15.02.2011 10:43
Элементы управления в VBA dimok5 Помощь студентам 0 08.02.2011 19:12
Вопросы по элементам управления в VBA bag Microsoft Office Excel 1 02.05.2009 13:20