Книга: VBA для чайников
Работа с отдельными ячейками диапазона
Работа с отдельными ячейками диапазона
Хотя можно с помощью одного оператора назначить одно значение всем ячейкам диапазона, как показано в предыдущем примере, в Excel нет метода, позволяющего с помощью единственного действия изменять имеющиеся значения многоячеечного диапазона. Оператор вроде someRange .Value = someRange . Value + 10 не работает. Вместо этого необходимо осуществить циклический перебор всех ячеек диапазона с помощью цикла For Each. . , Next. При использовании данной техники не требуется знание количества ячеек, входящих в диапазон. Вот пример работоспособного кода:
For Each aCell In Selection
aCell.Value = aCell.Value + 10
Next
Часто перед тем, как принять решение о выполнении действия над отдельной ячейкой или о вообще о выборе действия, требуется проверка содержимого ячейки. Основываясь на текущем значении ячейки, код может принять решение о форматировании ячейки, изменении ее значения или же использовании данного значения для выполнения других вычислений. В таком случае также используется цикл For Each . . . Next:
For Each aCell In Worksheets("2").Range("A5;B10")
If IsNumeric(aCell) Then
Select Case aCell
Case 5 to 10
aCell.Font.Underline = xlUnderlineStyleSingle
Case 10 to 20
aCell.Font.Italic = True
Case Is > 20
aCell.Font.Bold = True
End Select
End If
Next
- Практическая работа 53. Запуск Access. Работа с объектами базы данных
- Лекция 15. Работа с базами данных
- Работа с ресурсами локальной сети
- Эффективная работа с временными файлами сортировки
- Ускоренная работа с индексами
- HR-брендинг: Работа с поколением Y, новые инструменты для коммуникации, развитие корпоративной культуры и еще 9 эффектив...
- Безопасная работа с внешними таблицами
- Работа со строками
- 9.2. Работа прокси-сервера
- 3. Заработок для фотографов: заработать на фото – сайты фотобанков
- Работа с активным документом
- Работа с переменными