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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 22.06.2009, 23:01   #1
frantic150
Пользователь
 
Аватар для frantic150
 
Регистрация: 25.05.2009
Сообщений: 31
По умолчанию помогите упростить простой макрос

имеется код. помогите превратить это в цикл. обратите внимание, что столбец J не входит в цикл, т.е. он пропущен

Код:
Worksheets(4).Name = Sheets("Âñåãî").Range("C2").Value
    Worksheets(4).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(5).Name = Sheets("Âñåãî").Range("D2").Value
    Worksheets(5).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(6).Name = Sheets("Âñåãî").Range("E2").Value
    Worksheets(6).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(7).Name = Sheets("Âñåãî").Range("F2").Value
    Worksheets(7).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(8).Name = Sheets("Âñåãî").Range("G2").Value
    Worksheets(8).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(9).Name = Sheets("Âñåãî").Range("H2").Value
    Worksheets(9).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(10).Name = Sheets("Âñåãî").Range("I2").Value
    Worksheets(10).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(11).Name = Sheets("Âñåãî").Range("K2").Value
    Worksheets(11).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(12).Name = Sheets("Âñåãî").Range("L2").Value
    Worksheets(12).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(13).Name = Sheets("Âñåãî").Range("M2").Value
    Worksheets(14).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(14).Name = Sheets("Âñåãî").Range("N2").Value
    Worksheets(14).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(15).Name = Sheets("Âñåãî").Range("O2").Value
    Worksheets(15).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(16).Name = Sheets("Âñåãî").Range("P2").Value
    Worksheets(16).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
    
    Worksheets(17).Name = Sheets("Âñåãî").Range("Q2").Value
    Worksheets(17).PageSetup.RightHeader = Worksheets("Date").Range("B4").Text
frantic150 вне форума Ответить с цитированием
Старый 23.06.2009, 04:55   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Например, так:
Код:
Dim i As Integer, c As Integer
For i = 4 To 17
    With Sheets(i)
        c = IIf(i < 11, 1, 0)
        .Name = Sheets("A^n~a*a~i^").Cells(2, i - c)
        .PageSetup.RightHeader = Sheets("Date").[B4]
    End With
Next
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 23.06.2009, 04:55   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Код:
Sub test()
    Dim cell As Range, ra As Range: Application.ScreenUpdating = False
    i = 4: h = Worksheets("Date").Range("B4").Text
    For Each cell In Sheets("Âñåãî").Range("c2:i2,k2:q2").Cells
        Worksheets(i).Name = cell
        Worksheets(i).PageSetup.RightHeader = h
        i = i + 1
    Next cell
End Sub
EducatedFool вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос постоянно обрабатывает события. При открытии другой книги макрос обрывается. Ples Microsoft Office Excel 8 17.12.2016 18:15
Помогите упростить код Ralf_ru Помощь студентам 7 01.04.2009 17:17
Упростить формулу Stif-rva Microsoft Office Excel 7 09.03.2009 11:03
Помогите упростить с помощью VBA Dubineanschi Microsoft Office Excel 3 22.10.2008 14:21
Упростить логическое выражение. Помогите с поступлением. DartMrakkk Помощь студентам 4 27.07.2008 12:35