Деякі нотатки мовою VBA
Матеріал з Вікі ЦДУ
Приклад автоматичного переформатування рядків
Процедура описує процес переформатування рядків за принципом, один рядок отримує фоновий колір за замовченням а другий - сірий. Таке форматування корисне при аналізі наприклад друкованих на папері прайсів.
На початку маємо деяку таблицю, приклад зображено на Рис. 1:
Рис. 1
Процедура доволі проста, але функціональна. Тут вказана конкретна кількість рядків для обробки 12 та вказаний діапазон стовпчиків від 1 до 5. Додана додаткова умова переформатування рядка, якщо перша комірка рядка містить число, то вважаємо дяний рядок за такий, який необхідно переформатувати.
Sub Macros()
Dim state As Boolean
state = False
For i = 1 To 12
Value = Cells(i, 1)
If ((IsNumeric(Value) = True) And (Value <> "")) Then
If (state = True) Then
state = False
Range(Cells(i, 1), Cells(i, 5)).Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
Else
state = True
Range(Cells(i, 1), Cells(i, 5)).Select
Selection.Interior.ColorIndex = xlNone
End If
End If
Next i
End Sub
У результаті виконання макросу отримуємо таблицю зображену на Рис. 2.
Рис. 2