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

Вход

Регистрация

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

 

= Мир MS Excel/Макрос для нескольких страниц книги - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос для нескольких страниц книги (Макросы Sub)
Макрос для нескольких страниц книги
Aexbro Дата: Понедельник, 24.02.2014, 23:33 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 4 ±
Замечаний: 0% ±

Excel 2007
Здравствуйте.
Есть макрос созданный на этом форуме. Как его отредактировать ,что бы он работал на трех страницах из четырех?
[vba]
Код
Sub reset()
Dim rCell As Range
For Each rCell In Sheets(1).UsedRange
If rCell.Locked = False Then
rCell.Formula = ""
End If
Next
End Sub
[/vba]
Прикрепить файл не могу т.к. он более 300kb.
Название листов: Лист 1 OT Daily
Лист 2 OT Current
Лист 3 OT sorted
Спасибо
 
Ответить
СообщениеЗдравствуйте.
Есть макрос созданный на этом форуме. Как его отредактировать ,что бы он работал на трех страницах из четырех?
[vba]
Код
Sub reset()
Dim rCell As Range
For Each rCell In Sheets(1).UsedRange
If rCell.Locked = False Then
rCell.Formula = ""
End If
Next
End Sub
[/vba]
Прикрепить файл не могу т.к. он более 300kb.
Название листов: Лист 1 OT Daily
Лист 2 OT Current
Лист 3 OT sorted
Спасибо

Автор - Aexbro
Дата добавления - 24.02.2014 в 23:33
wild_pig Дата: Понедельник, 24.02.2014, 23:52 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 517
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
Перебрать листы исключая ненужные.
[vba]
Код
For sh = 1 To Sheets.Count
     If sh <> 4 Then  
         With Sheets(sh)
     ...
         End With
     End If
Next
[/vba]
 
Ответить
СообщениеПеребрать листы исключая ненужные.
[vba]
Код
For sh = 1 To Sheets.Count
     If sh <> 4 Then  
         With Sheets(sh)
     ...
         End With
     End If
Next
[/vba]

Автор - wild_pig
Дата добавления - 24.02.2014 в 23:52
Aexbro Дата: Вторник, 25.02.2014, 00:48 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 4 ±
Замечаний: 0% ±

Excel 2007
я не очень понимаю в макросах. Где в моем макросе вставить ваш? Как будет выглядеть конечный макрос?Простите неуча.
 
Ответить
Сообщениея не очень понимаю в макросах. Где в моем макросе вставить ваш? Как будет выглядеть конечный макрос?Простите неуча.

Автор - Aexbro
Дата добавления - 25.02.2014 в 00:48
AlexM Дата: Вторник, 25.02.2014, 10:39 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4490
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
Наверно так. Без вашего файла не проверить.
[vba]
Код
Sub reset()
Dim SN As Worksheet, rCell As Range
For Each SN In Sheets
     If SN.Index <> 4 Then 'Исключаете номер листа условием
     'If SN.Name <> "Общий" Then 'или имя листа. Нужна одна из двух строк.
         For Each rCell In SN.UsedRange
             If rCell.Locked = False Then
                 rCell.Formula = ""
             End If
         Next
     End If
Next
End Sub
[/vba]



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеНаверно так. Без вашего файла не проверить.
[vba]
Код
Sub reset()
Dim SN As Worksheet, rCell As Range
For Each SN In Sheets
     If SN.Index <> 4 Then 'Исключаете номер листа условием
     'If SN.Name <> "Общий" Then 'или имя листа. Нужна одна из двух строк.
         For Each rCell In SN.UsedRange
             If rCell.Locked = False Then
                 rCell.Formula = ""
             End If
         Next
     End If
Next
End Sub
[/vba]

Автор - AlexM
Дата добавления - 25.02.2014 в 10:39
Aexbro Дата: Вторник, 25.02.2014, 12:51 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 4 ±
Замечаний: 0% ±

Excel 2007
Я уменьшил файл. Вот он.
К сообщению приложен файл: OT_Master.xls (97.5 Kb)
 
Ответить
СообщениеЯ уменьшил файл. Вот он.

Автор - Aexbro
Дата добавления - 25.02.2014 в 12:51
AlexM Дата: Вторник, 25.02.2014, 14:02 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4490
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
Очищать ячейки можно диапазонами, а не по одной, как у вас.
[vba]
Код
Sub reset()
Application.ScreenUpdating = False
Dim SN As Worksheet, rCell As Range
For Each SN In Sheets
     If SN.Name <> "OT Final" Then
         aa = SN.UsedRange.Address
         For Each rCell In SN.UsedRange
             If rCell.Locked = False Then
                 bb = rCell.Address
                 rCell.Formula = ""
             End If
         Next
     End If
Next
Application.ScreenUpdating = True
End Sub
[/vba]
К сообщению приложен файл: OT_Master_new.xls (94.5 Kb)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеОчищать ячейки можно диапазонами, а не по одной, как у вас.
[vba]
Код
Sub reset()
Application.ScreenUpdating = False
Dim SN As Worksheet, rCell As Range
For Each SN In Sheets
     If SN.Name <> "OT Final" Then
         aa = SN.UsedRange.Address
         For Each rCell In SN.UsedRange
             If rCell.Locked = False Then
                 bb = rCell.Address
                 rCell.Formula = ""
             End If
         Next
     End If
Next
Application.ScreenUpdating = True
End Sub
[/vba]

Автор - AlexM
Дата добавления - 25.02.2014 в 14:02
Aexbro Дата: Вторник, 25.02.2014, 14:20 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 4 ±
Замечаний: 0% ±

Excel 2007
Огромное спасибо, AlexM. Работает. SUPERB
 
Ответить
СообщениеОгромное спасибо, AlexM. Работает. SUPERB

Автор - Aexbro
Дата добавления - 25.02.2014 в 14:20
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос для нескольких страниц книги (Макросы Sub)
  • Страница 1 из 1
  • 1
Поиск:

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