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

Pb de selection non contigue dans nouvelle fonction excel

4 réponses
Avatar
Laurent91
Bonjour à tous,

j'ai fait une petite fonction pour calculer la somme des écarts à la moyenne
(sem) et je l'ai ajouter dans les fonctions de calculs d'excel (enregistrer
en .xla dans le dossier XLSTART). Elle fonctionne avec une plage de cellule
contiguë mais pas avec une sélection de plage discontinue ???
=sem(A1;B5...)

je connais un peu le VBA mais pas assez pour comprendre ce problème de
plage.

Merci d'avance pour votre aide. ;o)
Laurent sous WIN2000 et Excel 2000

Function SEM(PlageDeCellules As Range) As Double
Dim ecart, racine As Double
Dim valeur As Integer
With WorksheetFunction
ecart = .StDev(PlageDeCellules)
valeur = .Count(PlageDeCellules)
End With
racine = Sqr(valeur)
SEM = ecart / racine
End Function

4 réponses

Avatar
isabelle
bonjour Laurent,

j'ai modifier un peu ta fonction en espérent qu'il n'y ait pas plus de 4 plages discontinue,

Function test1(Arg1 As Range, Optional Arg2 As Range, Optional Arg3 As Range, Optional Arg4 As Range)
Dim ecartS, racineS, valeurS
If Not Arg2 Is Nothing Then Set plg = Union(Arg1, Arg2)
If Not Arg3 Is Nothing Then Set plg = Union(plg, Arg3)
If Not Arg4 Is Nothing Then Set plg = Union(plg, Arg4)
ecartS = Evaluate("StDev(" & plg.Address & ")")
valeurS = Evaluate("Count(" & plg.Address & ")")
racineS = Evaluate("SQRT(" & valeurS & ")")
test1 = ecartS / racineS
End Function


attention au nom de variable déjà utilisé par excel ( comme : valeur)

isabelle


Bonjour à tous,

j'ai fait une petite fonction pour calculer la somme des écarts à la moyenne
(sem) et je l'ai ajouter dans les fonctions de calculs d'excel (enregistrer
en .xla dans le dossier XLSTART). Elle fonctionne avec une plage de cellule
contiguë mais pas avec une sélection de plage discontinue ???
=sem(A1;B5...)

je connais un peu le VBA mais pas assez pour comprendre ce problème de
plage.

Merci d'avance pour votre aide. ;o)
Laurent sous WIN2000 et Excel 2000

Function SEM(PlageDeCellules As Range) As Double
Dim ecart, racine As Double
Dim valeur As Integer
With WorksheetFunction
ecart = .StDev(PlageDeCellules)
valeur = .Count(PlageDeCellules)
End With
racine = Sqr(valeur)
SEM = ecart / racine
End Function




Avatar
Laurent91
Bonjour Isabelle,

merci pour ton aide, c'est super.
Penses tu qu'il est possible de rajouter plus d' "Optional Arg as Range"
sans que cela pose de problème??

Encors merci
Laurent. Qui est très content.... ;o))

"isabelle" wrote:

bonjour Laurent,

j'ai modifier un peu ta fonction en espérent qu'il n'y ait pas plus de 4 plages discontinue,

Function test1(Arg1 As Range, Optional Arg2 As Range, Optional Arg3 As Range, Optional Arg4 As Range)
Dim ecartS, racineS, valeurS
If Not Arg2 Is Nothing Then Set plg = Union(Arg1, Arg2)
If Not Arg3 Is Nothing Then Set plg = Union(plg, Arg3)
If Not Arg4 Is Nothing Then Set plg = Union(plg, Arg4)
ecartS = Evaluate("StDev(" & plg.Address & ")")
valeurS = Evaluate("Count(" & plg.Address & ")")
racineS = Evaluate("SQRT(" & valeurS & ")")
test1 = ecartS / racineS
End Function


attention au nom de variable déjà utilisé par excel ( comme : valeur)

isabelle


Bonjour à tous,

j'ai fait une petite fonction pour calculer la somme des écarts à la moyenne
(sem) et je l'ai ajouter dans les fonctions de calculs d'excel (enregistrer
en .xla dans le dossier XLSTART). Elle fonctionne avec une plage de cellule
contiguë mais pas avec une sélection de plage discontinue ???
=sem(A1;B5...)

je connais un peu le VBA mais pas assez pour comprendre ce problème de
plage.

Merci d'avance pour votre aide. ;o)
Laurent sous WIN2000 et Excel 2000

Function SEM(PlageDeCellules As Range) As Double
Dim ecart, racine As Double
Dim valeur As Integer
With WorksheetFunction
ecart = .StDev(PlageDeCellules)
valeur = .Count(PlageDeCellules)
End With
racine = Sqr(valeur)
SEM = ecart / racine
End Function







Avatar
JB
Bonjour,

-Sélectionner les champs discontinus avec Ctrl et nommer le champ
discontinu xxx
-Spécifier le nom de champ dans l'appel

http://cjoint.com/?gvvksrZcos

Cordialement JB




Bonjour à tous,

j'ai fait une petite fonction pour calculer la somme des écarts à la moyenne
(sem) et je l'ai ajouter dans les fonctions de calculs d'excel (enregistr er
en .xla dans le dossier XLSTART). Elle fonctionne avec une plage de cellu le
contiguë mais pas avec une sélection de plage discontinue ???
=sem(A1;B5...)

je connais un peu le VBA mais pas assez pour comprendre ce problème de
plage.

Merci d'avance pour votre aide. ;o)
Laurent sous WIN2000 et Excel 2000

Function SEM(PlageDeCellules As Range) As Double
Dim ecart, racine As Double
Dim valeur As Integer
With WorksheetFunction
ecart = .StDev(PlageDeCellules)
valeur = .Count(PlageDeCellules)
End With
racine = Sqr(valeur)
SEM = ecart / racine
End Function


Avatar
isabelle
bonjour Laurent,

je crois que l'on peut en mettre 30, mais j'en suis pas certaine, il faudra l'essayer.

isabelle

Bonjour Isabelle,

merci pour ton aide, c'est super.
Penses tu qu'il est possible de rajouter plus d' "Optional Arg as Range"
sans que cela pose de problème??

Encors merci
Laurent. Qui est très content.... ;o))

"isabelle" wrote:


bonjour Laurent,

j'ai modifier un peu ta fonction en espérent qu'il n'y ait pas plus de 4 plages discontinue,

Function test1(Arg1 As Range, Optional Arg2 As Range, Optional Arg3 As Range, Optional Arg4 As Range)
Dim ecartS, racineS, valeurS
If Not Arg2 Is Nothing Then Set plg = Union(Arg1, Arg2)
If Not Arg3 Is Nothing Then Set plg = Union(plg, Arg3)
If Not Arg4 Is Nothing Then Set plg = Union(plg, Arg4)
ecartS = Evaluate("StDev(" & plg.Address & ")")
valeurS = Evaluate("Count(" & plg.Address & ")")
racineS = Evaluate("SQRT(" & valeurS & ")")
test1 = ecartS / racineS
End Function


attention au nom de variable déjà utilisé par excel ( comme : valeur)

isabelle



Bonjour à tous,

j'ai fait une petite fonction pour calculer la somme des écarts à la moyenne
(sem) et je l'ai ajouter dans les fonctions de calculs d'excel (enregistrer
en .xla dans le dossier XLSTART). Elle fonctionne avec une plage de cellule
contiguë mais pas avec une sélection de plage discontinue ???
=sem(A1;B5...)

je connais un peu le VBA mais pas assez pour comprendre ce problème de
plage.

Merci d'avance pour votre aide. ;o)
Laurent sous WIN2000 et Excel 2000

Function SEM(PlageDeCellules As Range) As Double
Dim ecart, racine As Double
Dim valeur As Integer
With WorksheetFunction
ecart = .StDev(PlageDeCellules)
valeur = .Count(PlageDeCellules)
End With
racine = Sqr(valeur)
SEM = ecart / racine
End Function