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

Вход

Регистрация

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

 

= Мир MS Excel/Заливка цветом ячеек на разных листах - Страница 2 - Мир MS Excel

Старая форма входа
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Заливка цветом ячеек на разных листах (Макросы/Sub)
Заливка цветом ячеек на разных листах
blaskgeneral Дата: Суббота, 02.10.2021, 21:51 | Сообщение № 21
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

[vba]
Код
Private Sub Worksheet_Activate()
Dim i As Long
With Worksheets("Лист2")
For i = 2 To 4
.Range("A" & i & ":H" & i).Interior.ColorIndex = Cells(i, "F").Interior.ColorIndex
Next
End With
End Sub
[/vba]

Спасибо, все работает без перезагрузки после сохранения файла.


Сообщение отредактировал Serge_007 - Вторник, 19.10.2021, 15:47
 
Ответить
Сообщение
[vba]
Код
Private Sub Worksheet_Activate()
Dim i As Long
With Worksheets("Лист2")
For i = 2 To 4
.Range("A" & i & ":H" & i).Interior.ColorIndex = Cells(i, "F").Interior.ColorIndex
Next
End With
End Sub
[/vba]

Спасибо, все работает без перезагрузки после сохранения файла.

Автор - blaskgeneral
Дата добавления - 02.10.2021 в 21:51
blaskgeneral Дата: Вторник, 19.10.2021, 15:31 | Сообщение № 22
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

В модуль листа1

Еще вопрос возник: как это сделать на нескольких листах одновременно?
Не нашел информации. Попробовал сделать так:
[vba]
Код

Private Sub Worksheet_Activate()
Dim i As Long
With Worksheets("Лист2" & "Лист3" &"Лист4")
For i = 2 To 4
.Range("A" & i & ":H" & i).Interior.ColorIndex = Cells(i, "F").Interior.ColorIndex
Next
End With
End Sub
[/vba]
не работает.
Выдает ошибку "runtime error".


Сообщение отредактировал Serge_007 - Вторник, 19.10.2021, 15:47
 
Ответить
Сообщение
В модуль листа1

Еще вопрос возник: как это сделать на нескольких листах одновременно?
Не нашел информации. Попробовал сделать так:
[vba]
Код

Private Sub Worksheet_Activate()
Dim i As Long
With Worksheets("Лист2" & "Лист3" &"Лист4")
For i = 2 To 4
.Range("A" & i & ":H" & i).Interior.ColorIndex = Cells(i, "F").Interior.ColorIndex
Next
End With
End Sub
[/vba]
не работает.
Выдает ошибку "runtime error".

Автор - blaskgeneral
Дата добавления - 19.10.2021 в 15:31
Kuzmich Дата: Вторник, 19.10.2021, 15:42 | Сообщение № 23
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
как это сделать на нескольких листах одновременно?

В модуле эта книга выбрать
[vba]
Код
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
[/vba]
и туда поместить макрос


Сообщение отредактировал Kuzmich - Вторник, 19.10.2021, 15:57
 
Ответить
Сообщение
Цитата
как это сделать на нескольких листах одновременно?

В модуле эта книга выбрать
[vba]
Код
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
[/vba]
и туда поместить макрос

Автор - Kuzmich
Дата добавления - 19.10.2021 в 15:42
blaskgeneral Дата: Вторник, 19.10.2021, 20:12 | Сообщение № 24
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

и туда поместить макрос

Спасибо большое!
 
Ответить
Сообщение
и туда поместить макрос

Спасибо большое!

Автор - blaskgeneral
Дата добавления - 19.10.2021 в 20:12
blaskgeneral Дата: Вторник, 19.10.2021, 21:19 | Сообщение № 25
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

В модуле эта книга выбрать

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

и туда поместить макрос

Рано обрадовался... Работает, но почему-то не на всех страницах.
Даже перезапуск файла не помогает.
P.S.: На всякий случай тестовый файл приложил
К сообщению приложен файл: _5.xlsm (175.3 Kb)
 
Ответить
Сообщение
В модуле эта книга выбрать

Private Sub Workbook_SheetActivate(ByVal Sh As Object)

и туда поместить макрос

Рано обрадовался... Работает, но почему-то не на всех страницах.
Даже перезапуск файла не помогает.
P.S.: На всякий случай тестовый файл приложил

Автор - blaskgeneral
Дата добавления - 19.10.2021 в 21:19
Kuzmich Дата: Вторник, 19.10.2021, 22:14 | Сообщение № 26
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
Работает, но почему-то не на всех страницах

А, если переходить на страницы с листа Исходные данные, где у вас заданы цветовые условия?
Добавьте в правую часть кода явно лит Исходные данные
[vba]
Код
Worksheets("Исходные данные").Cells(i, "E").Interior.ColorIndex
[/vba]


Сообщение отредактировал Kuzmich - Вторник, 19.10.2021, 22:31
 
Ответить
Сообщение
Цитата
Работает, но почему-то не на всех страницах

А, если переходить на страницы с листа Исходные данные, где у вас заданы цветовые условия?
Добавьте в правую часть кода явно лит Исходные данные
[vba]
Код
Worksheets("Исходные данные").Cells(i, "E").Interior.ColorIndex
[/vba]

Автор - Kuzmich
Дата добавления - 19.10.2021 в 22:14
blaskgeneral Дата: Среда, 27.10.2021, 02:14 | Сообщение № 27
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

Добавьте в правую часть кода явно лит Исходные данные

Так и не разобрался, куда добавлять. И "где эта правая сторона" )))
 
Ответить
Сообщение
Добавьте в правую часть кода явно лит Исходные данные

Так и не разобрался, куда добавлять. И "где эта правая сторона" )))

Автор - blaskgeneral
Дата добавления - 27.10.2021 в 02:14
Kuzmich Дата: Среда, 27.10.2021, 17:23 | Сообщение № 28
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
Так и не разобрался, куда добавлять

У вас в коде есть строки
[vba]
Код
.Range("A" & i & ":H" & i).Interior.ColorIndex = Cells(i, "F").Interior.ColorIndex
[/vba]
В правую часть этого кода вставить явно лист Исходные данные
[vba]
Код
.Range("A" & i & ":H" & i).Interior.ColorIndex = Worksheets("Исходные данные").Cells(i, "F").Interior.ColorIndex
[/vba]
Удачи!
 
Ответить
Сообщение
Цитата
Так и не разобрался, куда добавлять

У вас в коде есть строки
[vba]
Код
.Range("A" & i & ":H" & i).Interior.ColorIndex = Cells(i, "F").Interior.ColorIndex
[/vba]
В правую часть этого кода вставить явно лист Исходные данные
[vba]
Код
.Range("A" & i & ":H" & i).Interior.ColorIndex = Worksheets("Исходные данные").Cells(i, "F").Interior.ColorIndex
[/vba]
Удачи!

Автор - Kuzmich
Дата добавления - 27.10.2021 в 17:23
blaskgeneral Дата: Суббота, 30.10.2021, 21:11 | Сообщение № 29
Группа: Пользователи
Ранг: Новичок
Сообщений: 13
Репутация: 0 ±
Замечаний: 0% ±

У вас в коде есть строки

.Range("A" & i & ":H" & i).Interior.ColorIndex = Cells(i, "F").Interior.ColorIndex

В правую часть этого кода вставить явно лист Исходные данные

.Range("A" & i & ":H" & i).Interior.ColorIndex = Worksheets("Исходные данные").Cells(i, "F").Interior.ColorIndex


Спасибо! Но, там не одна такая строка (см. картинку). Во всех менять? Или я ошибаюсь?
К сообщению приложен файл: 7534573.jpg (75.2 Kb)
 
Ответить
Сообщение
У вас в коде есть строки

.Range("A" & i & ":H" & i).Interior.ColorIndex = Cells(i, "F").Interior.ColorIndex

В правую часть этого кода вставить явно лист Исходные данные

.Range("A" & i & ":H" & i).Interior.ColorIndex = Worksheets("Исходные данные").Cells(i, "F").Interior.ColorIndex


Спасибо! Но, там не одна такая строка (см. картинку). Во всех менять? Или я ошибаюсь?

Автор - blaskgeneral
Дата добавления - 30.10.2021 в 21:11
Kuzmich Дата: Суббота, 30.10.2021, 22:51 | Сообщение № 30
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
Во всех менять?

Да, во всех.
 
Ответить
Сообщение
Цитата
Во всех менять?

Да, во всех.

Автор - Kuzmich
Дата добавления - 30.10.2021 в 22:51
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Заливка цветом ячеек на разных листах (Макросы/Sub)
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

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