Я пытаюсь создать интерактивную PowerPoint (это не Excel, потому что ее нужно отображать). Я пытаюсь сделать условное форматирование с помощью кода. ProdArray — это все текстовые поля, которые я хочу раскрасить в зависимости от их значения по сравнению с другим текстовым полем (ProdTarg).
Dim ProdArray(0 To 5) As String
Dim Day As Variant
ProdArray(0) = MonProd
ProdArray(1) = TueProd
ProdArray(2) = WedProd
ProdArray(3) = ThuProd
ProdArray(4) = FriProd
ProdArray(5) = SatProd
For Each Day In ProdArray
If Val(Day) >= Val(ProdTarg) * (Sixth + SixthLim) Then
Day.BackColor = &HFF00&
ElseIf Val(Day) < Val(ProdTarg) * (Sixth - SixthLim) Then
Day.BackColor = &HFF&
Else
Day.BackColor = &H80FF&
End If
Next Day
У меня есть цикл For Each, чтобы сделать код более кратким, но я продолжаю получать несоответствие типов. Цикл If внутри основан на следующем коде:
If Val(TueProd) >= Val(ProdTarg) * (Sixth + SixthLim) Then
TueProd.BackColor = &HFF00&
ElseIf Val(TueProd) < Val(ProdTarg) * (Sixth - SixthLim) Then
TueProd.BackColor = &HFF&
Else
TueProd.BackColor = &H80FF&
End If
Надеюсь, это даст вам представление о том, чего я пытаюсь достичь. Надеюсь, я не был слишком туп, но я не могу найти тему о том, как интегрировать переменную так, как мне нужно.
Day
иDayArray
? Как вы их определяете? В какой строке твоя ошибка? - person Kazimierz Jawor   schedule 02.07.2013Day
иDayArray
, так как вы не показали соответствующую часть кода. Итак, чем мы могли бы помочь вам тогда? - person Kazimierz Jawor   schedule 02.07.2013Day
иDayArray
вверху первого поля кода - это не то, что тебе нужно? - person Conquistador   schedule 02.07.2013ProdArray
, а неDayArray
:( - person Kazimierz Jawor   schedule 02.07.2013DayArray
наProdArray
- теперь оно читается какProdArray
- person Conquistador   schedule 02.07.2013Day.BackColor =
. Как я могу преобразовать вариант в объект? - person Conquistador   schedule 02.07.2013MonProd
,TueProd
ваши текстовые поля в пользовательской форме? - person Kazimierz Jawor   schedule 02.07.2013