IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

La fonction Ttest()


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 71
    Par défaut La fonction Ttest()
    Bonjour tout le monde,
    Après 48 heures de galère et de recherches ici et là en Français et en Anglais, la fonction Ttest en VBA me sort toujours la même erreur : #NOM?

    Savez-vous si cette fonction accepte des variables :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cellule.FormulaR1C1 = "= TTEST(echantillon1, echantillon2,2,3)"
    echantillon1 et échantillon2 étant des plages définies ci-dessous à titre d'exemple.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    set echantillon1=range(C2:C7)
    set echantillon2=range(B2:B5
    )

    La dernière valeur des colonnes B (ici 5) et C (ici 7) pouvant varier, je ne veux rien taper dans le dur.

    Merci d'avance.

  2. #2
    Membre Expert Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Par défaut
    Bonjour,

    Pas testé

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cellule.FormulaR1C1 = "= TTEST(" & echantillon1 & "," &  echantillon2 & ",2,3)"
    Je ne connais pas cette fonction mais lorsque l'on veut insérer des variables dans une chaine de caractère il faut les insérer en coupant la chaine.

    Tu dis

    Bon courage

  3. #3
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonjour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Sub CommentFaire()
    Dim Cellule As Range, Echantillon1 As Range, Echantillon2 As Range
    Dim Nc As Long, Nb As Long
     
    With Worksheets("Feuil1")
        Nc = .Cells(.Rows.Count, "C").End(xlUp).Row
        Set Echantillon1 = .Range("C2:C" & Nc)
        Nb = .Cells(.Rows.Count, "B").End(xlUp).Row
        Set Echantillon2 = .Range("B2:B" & Nb)
        Set Cellule = .Range("A1")
    End With
     
    Cellule.Formula = "=T.TEST(" & Echantillon1.Address & "," & Echantillon2.Address & ",2,3)"
     
    Set Echantillon1 = Nothing
    Set Echantillon2 = Nothing
    Set Cellule = Nothing
    End Sub

  4. #4
    Membre Expert
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2011
    Messages
    1 858
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Avril 2011
    Messages : 1 858
    Par défaut
    Bonjour,

    Pour inscrire la formule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = TEST.STUDENT($C$2:$C$7;$B$2:$B$5;2;3)
    dans la cellule A1, tu peux utiliser la ligne de code proposée par mercatog
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Range("A1").Formula = "= TTEST(" & echantillon1.Address & "," & echantillon2.Address & ",2,3)"
    Pour avoir simplement le résultat inscrit dans la cellule A1, tu peux utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Range("A1") = WorksheetFunction.TTest(echantillon1, echantillon2, 2, 3)
    Cordialement.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    71
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 71
    Par défaut
    La solution était bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Range("A1").Formula = "= TTEST(" & echantillon1.Address & "," & echantillon2.Address & ",2,3)"
    Un grand bravo et surtout un grand merci à vous tous.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Fonction API
    Par margilb dans le forum C++Builder
    Réponses: 2
    Dernier message: 08/07/2002, 11h11
  3. Implémentation des fonctions mathématiques
    Par mat.M dans le forum Mathématiques
    Réponses: 9
    Dernier message: 17/06/2002, 16h19
  4. fonction printf
    Par ydeleage dans le forum C
    Réponses: 7
    Dernier message: 30/05/2002, 11h24
  5. FOnction api specifiant la position de la souris
    Par florent dans le forum C++Builder
    Réponses: 4
    Dernier message: 15/05/2002, 20h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo