Čtvrtek, 05 2023 ledna
  1 Odpovědi
  3.6 tis. Návštěv
0
Hlasy
Zrušit
Předem děkuji za jakoukoli pomoc v této věci, kterou můžete nabídnout.

S pomocí těchto stránek jsem vytvořil následující funkci;

Funkce ColorFunction(rColor As Range, rRange As Range, Volitelný SUM As Boolean)
Dim rCell As Range
Dim lCol As Long
Ztlumit vResult
lCol = rColor.Interior.ColorIndex
Pokud SUM = True Then
Pro každý rCell v rRange
Pokud rCell.Interior.ColorIndex = lCol Then
vResult = WorksheetFunction.SUM(rCell, vResult)
End If
Další rCell
Jiný
Pro každý rCell v rRange
Pokud rCell.Interior.ColorIndex = lCol Then
vResult = 1 + vResult
End If
Další rCell
End If
ColorFunction = vResult
End Function


V každé cílové buňce, kterou chci, je součet všech buněk v tomto řádku, které obsahují barvu zadané buňky;
=colorfunction(AR4,H5:AP5,TRUE)

Jak mohu dosáhnout toho, aby se cílový prodej aktualizoval, když jakákoli jiná buňka v řádku (H5:AP5) změní barvu?
Před rokem 1
·
#3338
0
Hlasy
Zrušit
Ahoj,

Můžete přidat kód: Aplikace.Výpočet = xlAutomatic k vaší funkci:

Function ColorFunction(rColor As Range, rRange As Range, Optional SUM As Boolean)
Dim rCell As Range
Dim lCol As Long
Dim vResult
Application.Calculation = xlAutomatic
lCol = rColor.Interior.ColorIndex
If SUM = True Then
For Each rCell In rRange
If rCell.Interior.ColorIndex = lCol Then
vResult = WorksheetFunction.SUM(rCell, vResult)
End If
Next rCell
Else
For Each rCell In rRange
If rCell.Interior.ColorIndex = lCol Then
vResult = 1 + vResult
End If
Next rCell
End If
ColorFunction = vResult
End Function


Zkuste to prosím.

Amanda
  • Stránka:
  • 1
Na tento příspěvek zatím nebyly učiněny žádné odpovědi.