Le jeu des 7 erreurs

  • Initiateur de la discussion Initiateur de la discussion yubstart
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Y

yubstart

Guest
Bonjour,

Est-ce-que quelqu'un pourrait m'expliquer pourquoi, dans le code suivant, les procédures donnent des valeurs de "max" différentes?
J'ai beau chercher je me sens tout bête.
La première procédure me donne le résultat attendu, mais vous vous en doutez, j'aurais besoin d'utiliser la seconde version afin de l'insérer dans une procédure plus complexe où la plage change fréquemment.


PHP:
Sub somme_du_mois_version1()  
    max= Application.WorksheetFunction.Max(Range("a1", Range("a65536").End(xlUp)))
    MsgBox Format(max, "mm/yyyy")    
end sub

Sub somme_du_mois_version2()      
    plage = Range("a1", Range("a65536").End(xlUp))
    max= Application.WorksheetFunction.Max(plage_mois_teste)
    MsgBox Format(max, "mm/yyyy")
End Sub

Si quelqu'un passe dans le coin, et peut me donner un petit coup de pouce, je lui en serais reconnaissant.
 
Re : Le jeu des 7 erreurs

désolé, pour être plus clair dans mes explications et comme c'est un extrait de code, j'ai cru bon de simplifier. Le code que j'utilise est le suivant
PHP:
Sub somme_du_mois()
       


    selection_plage_date = Application.WorksheetFunction.Max(Range("B11", Range("b65536").End(xlUp)))
    MsgBox Format(selection_plage_date, "mm/yyyy")
    
    
    plage_mois_teste = Range("B11", Range("b65536").End(xlUp))
    selection_plage_date1 = Application.WorksheetFunction.Max(plage_mois_teste)
    MsgBox Format(selection_plage_date1, "mm/yyyy")
End Sub
Où la colonne b contient des dates sour la forme mm/yyyy Le problème reste entier
 
Dernière modification par un modérateur:
Re : Le jeu des 7 erreurs

Ca semble pour le moins étonnant.

Quels sont les deux résultats que tu obtiens ?


[edit]
Arf, oui, je viens de tester et j'ai effectivement deux résultats différents car dans le deuxième cas on a toujours 0 (zéro). 🙁
C'est peut-être la ligne plage_mois_teste = Range("B11", Range("b65536").End(xlUp)) qui n'a pas la syntaxe exacte.
[/edit]
 
Dernière édition:
Re : Le jeu des 7 erreurs

Bonjour,

Admettons que dans la colonne B la date la plus récente soit le 03/2011
premier message : 03/2011
deuxième message : 12/1899

la première est bonne, la deuxième a l'air de sortir du fond de l'enfer et n'a aucun rapport avec les données
 
Re : Le jeu des 7 erreurs

Bonjour,
une autre façon, regarde le code :

Code:
Sub somme_du_mois()
    Range("B11", Range("b65536").End(xlUp)).Name = "plage_mois_teste"
    selection_plage_date1 = Application.WorksheetFunction.Max([COLOR="Red"][[/COLOR]plage_mois_teste[COLOR="Red"]][/COLOR])
    MsgBox Format(selection_plage_date1, "mm/yyyy")
End Sub

Attention aux crochets, plage_mois_teste est devenu une zone de cellules
 
Re : Le jeu des 7 erreurs

Ah ben voilà, Bhbh a trouvé la solution. 🙂

Perso j'avais trouvé ça :
plage_mois_teste = Range("B11", Range("b65536").End(xlUp)).Address()
selection_plage_date1 = Application.WorksheetFunction.Max(Range(plage_mois_teste))
MsgBox Format(selection_plage_date1, "mm/yyyy")
 
Dernière édition:
Re : Le jeu des 7 erreurs

Eh bien merci,

c'est mon jour de chance deux solutions pour le même problème. Et je pense en avoir compris la raison en plus.
Je vais boire un coup à votre santé sur la plage
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
881
Réponses
2
Affichages
1 K
Réponses
1
Affichages
1 K
  • Question Question
Microsoft 365 Programme trop lent
Réponses
12
Affichages
1 K
M
Réponses
4
Affichages
1 K
Marh
M
Retour