Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Application.worksheetfunction.subtotal ...

4 réponses
Avatar
Yvan
Bonjour,

J'utilise la syntaxe suivante dans une macro mais cela ne fonctionne pas :

ActiveCell = Application.WorksheetFunction.Subtotal(1, Range(Cells(2,
14), Cells(a, 14)))

Il faut dire que dans la colonne concernée, il y a des cellules contenant du
texte.

Le pb vient-il de là ???

Si j'écris la formule :

=sous.total(1;N2:N500)

dans une cellule de la feuille, le calcul s'effectue bien.

Il doit y avoir une subtilité qui m'échappe !!!

--
Merci pour vos réponses.

4 réponses

Avatar
papou
Bonjour
3 pistes pour ce qui me concerne :
1 - Es-tu sûr de ta variable "a" ?
2 - Modifie avec : Activecell.Value =
Application.WorksheetFunction.Subtotal(1, Range(Cells(2, 14), Cells(a, 14)))
3 - Eventuellement utilise ce type de méthode
[SUBTOTAL(1,B2:B4)]

Cordialement
Pascal

"Yvan" a écrit dans le message de news:

Bonjour,

J'utilise la syntaxe suivante dans une macro mais cela ne fonctionne pas :

ActiveCell = Application.WorksheetFunction.Subtotal(1, Range(Cells(2,
14), Cells(a, 14)))

Il faut dire que dans la colonne concernée, il y a des cellules contenant
du
texte.

Le pb vient-il de là ???

Si j'écris la formule :

=sous.total(1;N2:N500)

dans une cellule de la feuille, le calcul s'effectue bien.

Il doit y avoir une subtilité qui m'échappe !!!

--
Merci pour vos réponses.


Avatar
lSteph
Bonjour,

???Cells(a, 14)
??a
?déf. variable

et si
=sous.total(1;N2:N500)


donc peut-être selon la définition de a devrait donner

Cells(500, 14)

Cordialement.

lSteph
"Yvan" a écrit dans le message de news:

Bonjour,

J'utilise la syntaxe suivante dans une macro mais cela ne fonctionne pas :

ActiveCell = Application.WorksheetFunction.Subtotal(1, Range(Cells(2,
14), Cells(a, 14)))

Il faut dire que dans la colonne concernée, il y a des cellules contenant
du
texte.

Le pb vient-il de là ???

Si j'écris la formule :

=sous.total(1;N2:N500)

dans une cellule de la feuille, le calcul s'effectue bien.

Il doit y avoir une subtilité qui m'échappe !!!

--
Merci pour vos réponses.


Avatar
Yvan
En fait, j'ai remplacé la variable "a" par une valeur et il s'avère qu'Excel
bug si la plage est trop importante.

Connais-tu une astuce ???

--
Merci pour vos réponses.



Bonjour
3 pistes pour ce qui me concerne :
1 - Es-tu sûr de ta variable "a" ?
2 - Modifie avec : Activecell.Value =
Application.WorksheetFunction.Subtotal(1, Range(Cells(2, 14), Cells(a, 14)))
3 - Eventuellement utilise ce type de méthode
[SUBTOTAL(1,B2:B4)]

Cordialement
Pascal

"Yvan" a écrit dans le message de news:

Bonjour,

J'utilise la syntaxe suivante dans une macro mais cela ne fonctionne pas :

ActiveCell = Application.WorksheetFunction.Subtotal(1, Range(Cells(2,
14), Cells(a, 14)))

Il faut dire que dans la colonne concernée, il y a des cellules contenant
du
texte.

Le pb vient-il de là ???

Si j'écris la formule :

=sous.total(1;N2:N500)

dans une cellule de la feuille, le calcul s'effectue bien.

Il doit y avoir une subtilité qui m'échappe !!!

--
Merci pour vos réponses.







Avatar
Yvan
Autant pour moi, une cellule était en #valeur dans la colonne !!!

--
Merci pour vos réponses.



En fait, j'ai remplacé la variable "a" par une valeur et il s'avère qu'Excel
bug si la plage est trop importante.

Connais-tu une astuce ???

--
Merci pour vos réponses.



Bonjour
3 pistes pour ce qui me concerne :
1 - Es-tu sûr de ta variable "a" ?
2 - Modifie avec : Activecell.Value =
Application.WorksheetFunction.Subtotal(1, Range(Cells(2, 14), Cells(a, 14)))
3 - Eventuellement utilise ce type de méthode
[SUBTOTAL(1,B2:B4)]

Cordialement
Pascal

"Yvan" a écrit dans le message de news:

Bonjour,

J'utilise la syntaxe suivante dans une macro mais cela ne fonctionne pas :

ActiveCell = Application.WorksheetFunction.Subtotal(1, Range(Cells(2,
14), Cells(a, 14)))

Il faut dire que dans la colonne concernée, il y a des cellules contenant
du
texte.

Le pb vient-il de là ???

Si j'écris la formule :

=sous.total(1;N2:N500)

dans une cellule de la feuille, le calcul s'effectue bien.

Il doit y avoir une subtilité qui m'échappe !!!

--
Merci pour vos réponses.