Я пытаюсь написать небольшой фрагмент VBA, который будет затенять столбец excel на основе переменных RGB в соседних столбцах. Таким образом, у меня есть таблица данных (без заголовков) с 3 столбцами (R G и B) и x строк (количество будет варьироваться). Я хотел бы покрасить 4-й столбец справа от этой таблицы в цвете на основе 3 цифр слева. Обратите внимание, что я планирую выбирать верхнюю левую ячейку каждый раз, когда я ее выполню.VBA - Ошибка при использовании ActiveCell и CurrentRegion
Ниже приведен код, который я использовал, но я получаю сообщение об ошибке:
Ошибка 438 ... Объект оленьей кожи поддерживает это свойство или метод
указывая на Set rng
линии, будучи проблема.
Любые мысли или помогают значительно appreicated
Sub RGBTest()
Dim rng As Range
Dim n As Integer
Set rng = ActiveSheet.ActiveCell.CurrentRegion
ActiveCell.Offset(0, 3).Activate
For n = 1 To rng.Rows.Count
ActiveCell.Interior.Color = RGB(rng.Cells(n, 1), rng.Cells(n, 2), rng.Cells(n, 3))
ActiveCell.Offset(1, 0).Activate
Next n
End Sub
Большое спасибо - кажется, помогли. Но это привело к следующей проблеме. Теперь я получаю ошибку ошибки несоответствия типа 13 в строке «ActiveCell.Interior.Color = RGB (rng.Cells (n, 1), rng.Cells (n, 2), rng.Cells (n, 3))« Любой идеи? –
@JonathanHutchison, возможно, одна из ваших ячеек не содержит числа. – arcadeprecinct