pb avec référence activecell
Bonsoir,
voici une fonction de comptage de cellules qui pemet de compter des cellules d'une zone donnée en fonction de la couleur donnée par BgColor1 et de la valeur d'une cellule dont on détemine l'emplacement en comptant le nombre de colonnes qui sépare la cellule dans laquelle on va placer la fonction et une autre cellule ;
le problème, c'est qu'avec activecell, j'ai une formule qui fonctionne uniquement si je suis placé sur la case de la formule. La 2ème formule donne la solution : il faut créer une variable range en plus.
La question est de savoir s'il y a moyen de référencer la cellule dans laquelle on place la fonction sans avoir à créer une variable pour cela.
NB: il y a plus de détail sur une question nommée Pb avec offset qui m'avait permis de finir cette formule, mais a soulevé ce pb.
Merci d'avance.
Code:
1 2 3 4 5 6 7 8 9
| 'compte cellules avec une couleur de fond en fonction du jour de la semaine : cette formule fonctionne
Function ColorCountFctJSemAuto(SearchArea As Object, BgColor1 As Range, NJour As Range, Jsem As Integer) As Integer
Application.Volatile True
ColorCountFctJSemAuto = 0
MaCoul1 = BgColor1.Interior.ColorIndex
For Each cell In SearchArea
If cell.Interior.ColorIndex = MaCoul1 And cell.Offset(0, (NJour.Column - ActiveCell.Column)).Value = Jsem Then ColorCountFctJSemAuto = ColorCountFctJSemAuto + 1
Next cell
End Function |
Code:
1 2 3 4 5 6 7 8 9
| 'compte cellules avec une couleur de fond en fonction du jour de la semaine : cette formule fonctionne
Function ColorCountFctJSemAuto(SearchArea As Object, BgColor1 As Range, NJour As Range, CasFct as Range, Jsem As Integer) As Integer
Application.Volatile True
ColorCountFctJSemAuto = 0
MaCoul1 = BgColor1.Interior.ColorIndex
For Each cell In SearchArea
If cell.Interior.ColorIndex = MaCoul1 And cell.Offset(0, (NJour.Column - CasFct.Column)).Value = Jsem Then ColorCountFctJSemAuto = ColorCountFctJSemAuto + 1
Next cell
End Function |