Fonction Max

Résolu
lepapillon2015 Messages postés 28 Statut Membre -  
lepapillon2015 Messages postés 28 Statut Membre -
Bonjour tout le monde !!
Je viens vous demander votre aide à propos d'une macro que j'essaie de créer.
En effet, j'ai créée un projet avec 3 différentes feuilles dans mon classeur et pour conclure mon analyse je voudrais créer une Messagebox de fin pour afficher le résultat maximum entre mes 3 feuilles. Je dois donc comparer 3 résultats qui se trouvent dans 3 feuilles différentes...
Comment faire ??
Merci beaucoup pour le coup de pouce ça me débloquerais la situation !
A bientot !

2 réponses

  1. ccm81 Messages postés 11033 Statut Membre 2 434
     
    Bonjour

    Un exemple

    Public Function NMax(a, b, c)
    Dim m
    m = a
    If b > m Then m = b
    If c > m Then m = c
    NMax = m
    End Function
    
    Public Sub essai()
    Dim m, F1, F2, F3
    Set F1 = Sheets(1)
    Set F2 = Sheets(2)
    Set F3 = Sheets(3)
    m = NMax(F1.Cells(2, 1), F2.Cells(2, 1), F3.Cells(2, 1))
    MsgBox "maxi : " & m
    End Sub

    Cdlmnt
    1
    1. lepapillon2015 Messages postés 28 Statut Membre
       
      merci :)
      0
  2. NHenry Messages postés 15235 Date d'inscription   Statut Modérateur Dernière intervention   387
     
    Qu'as-tu déjà essayé, as-tu essayé de voir le code généré par le générateur de macro d'Excel ?
    0
    1. lepapillon2015 Messages postés 28 Statut Membre
       
      J'ai essayé de faire ça
      Sub Result()
      Function MMax(O.cells(20,1), A.Cells(20,1), C.cells(20,1))

      If O.cells(20,1) > A.Cells(20,1) Then MMax = O.cells(20,1) Else MMax = A.Cells(20,1)
      If C.cells(20,1) > MMax Then MMax = C.cells(20,1)

      End Function
      End Result
      Et ça ne marche pas, sachant que O, A et C sont différents worksheet...
      0
    2. lepapillon2015 Messages postés 28 Statut Membre
       
      Enfin ce code est pour la fonction apres je ne sais pas comment attribuer ma message box au max...
      je pensais à un truc comme ca :
      MsgBox "La valeur max est " & " " & MMax "
      Je suis un peu perdu :)
      0
    3. NHenry Messages postés 15235 Date d'inscription   Statut Modérateur Dernière intervention   387
       
      Sub Result()
      Function MMax(O.cells(20,1), A.Cells(20,1), C.cells(20,1))

      Tu déclare une fonction dans une sub ?
      Il me semble que ce n'est pas possible, revois ton code.

      Pour retourner une valeur dans une fonction, c'est NomDeLaFonction=Valeur.
      0