Макрос в Excel - VBA (48590)

Узнай цену своей работы

Формулировка задачи:

Доброго времени суток! Есть макрос, который сперва выполняет некоторые действия на одном листе (активном листе, с которого и запускается макрос нажатием кнопки), затем должен выполнить некоторые действия с указанным диапазоном ячеек на втором листе. Делаю второй лист активным Sheets("Имялиста").Activate для того, чтобы начать взаимодействие с диапазоном ячеек на втором листе. Суть проблемы: несколько строк кода действительно выполняется со вторым листом, но как только дело доходит до работы с диапазоном ячеек Range, то снова начинается взаимодействие с первым листом. Вопрос: Каким образом в указанный момент перейти на взаимодействие со вторым листом? Спасибо.

Решение задачи: «Макрос в Excel»

textual
Листинг программы
  1. Private Sub Button_Click()
  2.     Application.ScreenUpdating = False
  3.     Dim row As Long
  4.     With Sheets(1)
  5.           row = ActiveCell.row + 1
  6.           MsgBox row
  7.     End With
  8.      
  9.     Worksheets(2).Activate
  10.     With Sheets(2)
  11.     Dim lastRow As Long
  12.     Dim i As Long
  13.    
  14.     lastRow = .Cells(Rows.Count, 3).End(xlUp).row
  15.     For i = 1 To lastRow
  16.             If i Mod 2 = 0 Then
  17.                 Range(Cells(i, 1), Cells(i, 2)).Interior.Color = 11111111
  18.             Else
  19.                 Range(Cells(i, 1), Cells(i, 2)).Interior.Color = 12222222
  20.             End If
  21.     Next i
  22.  
  23.     End With
  24.     Application.ScreenUpdating = True
  25.     End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.714 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы