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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.02.2012, 19:08   #1
Барсук
Новичок
Джуниор
 
Регистрация: 20.02.2012
Сообщений: 2
По умолчанию Копирование области печати в новую книгу

Доброго времени суток.
Помогите, пожалуйста, есть такая задача: существует файл в котором заданы области печати, нужно их считать и скопировать в новый файл (создать его). Области печати находятся на разных листах и должны быть скопированы в новую книгу тоже раздельно
Барсук вне форума Ответить с цитированием
Старый 21.02.2012, 10:34   #2
Барсук
Новичок
Джуниор
 
Регистрация: 20.02.2012
Сообщений: 2
По умолчанию Будет ли работать такой вариант?

Доброе утро!
xxxname = ActiveWindow.SelectedSheets(1).Name
xxxSheetsNum = Worksheets.Count
xxxSheetRes = 0

For xxxCurSheet = 1 To xxxSheetsNum
If Worksheets.Item(xxxCurSheet).Name = "colors" Then
xxxSheetRes = xxxCurSheet
End If
Next xxxCurSheet
xxxCommon = Worksheets.Item(xxxSheetRes).Cells( xxx1, 7).Value ' öâåò
xxxColor = Worksheets.Item(xxxSheetRes).Cells( xxx2, 7).Value ' öâåò

xxxReplace = True
For xxxCurSheet = 1 To xxxSheetsNum
If (Worksheets.Item(xxxCurSheet).Tab.C olor = xxxCommon) Or (Worksheets.Item(xxxCurSheet).Tab.C olor = xxxColor) Then
Worksheets.Item(xxxCurSheet).Select Replace:=xxxReplace
xxxReplace = False
End If
Next xxxCurSheet

ActiveWindow.SelectedSheets.xlSourc ePrintArea.Copy
Sub CopyByTabColor(xxx1 As Integer, xxx2 As Integer)
' выделение листов с цветами ярлычков, соответствующими цветам, указанным в строках xxx1 и xxx2 колонки 7(G) листа Colors
xxxname = ActiveWindow.SelectedSheets(1).Name
xxxSheetsNum = Worksheets.Count
xxxSheetRes = 0

For xxxCurSheet = 1 To xxxSheetsNum
If Worksheets.Item(xxxCurSheet).Name = "colors" Then
xxxSheetRes = xxxCurSheet
End If
Next xxxCurSheet
xxxCommon = Worksheets.Item(xxxSheetRes).Cells( xxx1, 7).Value ' цвет
xxxColor = Worksheets.Item(xxxSheetRes).Cells( xxx2, 7).Value ' цвет

xxxReplace = True
For xxxCurSheet = 1 To xxxSheetsNum
If (Worksheets.Item(xxxCurSheet).Tab.C olor = xxxCommon) Or (Worksheets.Item(xxxCurSheet).Tab.C olor = xxxColor) Then
Worksheets.Item(xxxCurSheet).Select Replace:=xxxReplace
xxxReplace = False
End If
Next xxxCurSheet

ActiveWindow.SelectedSheets.xlSourc ePrintArea.Copy

Else
MsgBox ("не скопировано")
End If
Worksheets(xxxname).Select Replace:=True

End Sub

правил из готового решения, может есть вариант по проще?
Барсук вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
поля разела выходят за границы области печати yurik85 Microsoft Office Word 9 22.04.2012 16:57
Копирование в новую книгу с именем из ячейки oleg_sh Microsoft Office Excel 3 25.07.2011 14:48
Как сделать активной новую Книгу? Sergey112233 Microsoft Office Excel 10 24.07.2011 16:00
Несовпадения в новую книгу. iamhelen Microsoft Office Excel 4 27.04.2010 16:47
Копирование диаграмм в новую книгу juliaowen Microsoft Office Excel 1 30.10.2009 11:06