Vos fonctions préférées

13GIBE59

XLDnaute Accro
Re : Vos fonctions préférées

Bonjour le forum.

J'aime bien ce fil, il est aussi sympa que vous...
Personnellement, je suis comme Hervé : j'aime bien la fonction SOMME, parce que c'est la seule que je maîtrise à fond...
 

Staple1600

XLDnaute Barbatruc
Re : Vos fonctions préférées

Bonsoir à tous

Personnellement, c'est cette formule matricielle de Bob UMLAS*
(mise en lumière par Mister WALKENBACH qui m'a fait entrer dans la Cellule pour ne plus en ressortir)
Code:
=SI(MOIS(DATE(ANNEE(B9);MOIS(B9);1))<>MOIS(DATE(ANNEE(B9);MOIS(B9);1)-(JOURSEM(DATE(ANNEE(B9);MOIS(B9);1))-1)+{0;1;2;3;4;5}*7+{1.2.3.4.5.6.7}-1);"";DATE(ANNEE(B9);MOIS(B9);1)-(JOURSEM(DATE(ANNEE(B9);MOIS(B9);1))-1)+{0;1;2;3;4;5}*7+{1.2.3.4.5.6.7}-1)

L'ennui avec John (et l'avantage) , c'est qu'il nous vient des US...
Alors j'ai passé de longs moments au début à essayer de franciser la bête, et par facilité et dépité je suis tombé dans l'addiction aux substances Option Explicit et j'ai négligé depuis ce temps le monde des formules.

PS: Les formulistes du forum sauront à quoi sert cette formule, les autres sauront trouvé un des Graal XLiens grâce au moteur de leur choix.

EDITION: *: Merci au petit gars à l’œil vif que je viens de remercier plus haut ;)
 
Dernière édition:

C@thy

XLDnaute Barbatruc
Re : Vos fonctions préférées

Eh ben moi j'aime bien CHOISIR et la plus courte de toutes : le & qui range le CONCATENER aux oubliettes
et aussi DATEDIF même si l'aide de my crotte soft (quand on la trouve!) sur cette fonction est fausse (pas de j ou a dans les arguments mais d et y)

J'aime bien aussi le ctrl+; pour écrire la date système

et en VBA le string, évidemment!...

Bises

C@thy
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Vos fonctions préférées

Bonsoir tout le monde
Par contre Gruick pas trop compris ton
"<---- et oui, l'espace... pour faire une sélection d'intersection entre une ligne et une colonne
Mais si, heureusement qu'il est là cet espace, comme opérateur d'intersection, sinon les colonnes nommées dans un classeur seraient presque inutilisables dans certaines formules !
J'ai vu qu'apparemment les instructions, non seulement les fonctions, étaient aussi autorisées comme préférées dans le fil.
Alors la mienne: RaiseEvent !
Amicalement.
 

Staple1600

XLDnaute Barbatruc
Re : Vos fonctions préférées

Re

En allant voir de plus près dans l'aide d'Excel les différentes fonctions, je suis tombé sur celle-ci:
Code:
=ZONES((B2:D4;E5;F6:I9))
De mémoire d'XLDien, je n'ai jamais vu sur le forum de fil ou cette fonction a été utilisé.
A quoi peut-elle donc servir concrètement ?
PS1: Je sors un peu du cadre, mais on le droit d'avoir une préférence pour les formules qu'on comprend le moins ou qu'on utilise le moins ;)
PS2:Sinon un détournement de fonction utile : la fonction N()
Code:
=AUJOURDHUI()+N("On a plus le droit..Désolé.. Astucieux pour mettre des commentaires dans vos formules")
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : Vos fonctions préférées

ZONES … A quoi peut-elle servir concrètement ?
Aucune idée à part peut être vérifier si une plage est d'un seul tenant ? C'est de l'Excel, non du VBA.
Son équivalent VBA (Plage étant une expression Range): Plage.Areas.Count n'est guère utile non plus puisqu'il n'est pas judicieux d'utiliser Plage.Areas(N) dans un For N etc. mais plutôt un Range Zone dans For Each Zone In Plage.Areas
Ça par contre c'est indispensable pour traiter des sélections multiples ou la partie visible d'une plage filtrée.
Amicalement.
 

Misange

XLDnaute Barbatruc
Re : Vos fonctions préférées

Hello
zones(A1:B2;A3;H4:J7) renvoie 3, autrement dit compte le nombre de zones distinctes dans une plage. C'est une fonction volatile. En fait je ne la connais que parce qu'elle appartient à la liste des fonctions volatiles mais je ne crois pas m'en être jamais servi. Et à dire vrai je ne vois pas trop quel exemple bâtir pour montrer à quoi cela pourrait bien servir. Peut être comme le suggère Dranreb pour l'équivalent VBA à compter le nombre de plages distinctes après application d'un filtre ?
 

Modeste geedee

XLDnaute Barbatruc
Re : Vos fonctions préférées

Bonsour®
Bonsoir à tous

Personnellement, c'est cette formule matricielle de Mister WALKENBACH qui m'a fait entrer dans la Cellule pour ne plus en ressortir
Code:
=SI(MOIS(DATE(ANNEE(B9);MOIS(B9);1))<>MOIS(DATE(ANNEE(B9);MOIS(B9);1)-(JOURSEM(DATE(ANNEE(B9);MOIS(B9);1))-1)+{0;1;2;3;4;5}*7+{1.2.3.4.5.6.7}-1);"";DATE(ANNEE(B9);MOIS(B9);1)-(JOURSEM(DATE(ANNEE(B9);MOIS(B9);1))-1)+{0;1;2;3;4;5}*7+{1.2.3.4.5.6.7}-1)

L'ennui avec John (et l'avantage) , c'est qu'il nous vient des US...
PS: Les formulistes du forum sauront à quoi sert cette formule, les autres sauront trouvé un des Graal XLiens grâce au moteur de leur choix.

:cool:
pour la postérité... JW précisait dans l'un de ces bouquins, l'auteur de cette formule : Bob Umlas
Creating a calendar with a single array-entered formula(en fin de page)
Array Formulas

Bob Umlas - Excel - Business Software - Computing/Technology

:rolleyes: adaptation pour debut de semaine=lundi
date référence en B9
Puis selectionner une plage de 6 lignes, 7 colonnes
Barre de formule
Code:
=SI(MOIS(DATE(ANNEE(B9);MOIS(B9);1))<>MOIS(DATE(ANNEE(B9);MOIS(B9);1)-(JOURSEM(DATE(ANNEE(B9);MOIS(B9);1);2)-1)+{0;1;2;3;4;5}*7+{1.2.3.4.5.6.7}-1);"";DATE(ANNEE(B9);MOIS(B9);1)-(JOURSEM(DATE(ANNEE(B9);MOIS(B9);1);2)-1)+{0;1;2;3;4;5}*7+{1.2.3.4.5.6.7}-1)
validation Ctrl+Shift+Enter
Capture.JPG
 

Pièces jointes

  • Capture.JPG
    Capture.JPG
    31.3 KB · Affichages: 141
  • Capture.JPG
    Capture.JPG
    31.3 KB · Affichages: 154

Staple1600

XLDnaute Barbatruc
Re : Vos fonctions préférées

Bonjour

Merci Modeste d'avoir rendu à César.
(J'aime bien aussi Bob Umlas, mais j'ai la mémoire qui flanche parfois, et le pire c'est que ton lien est dans mes favoris)

Et merci pour la francisation.
 

Dugenou

XLDnaute Barbatruc
Re : Vos fonctions préférées

Bonjour à tous et spécialement à Brigitte,
Je trouve absolument épatante ta macro qui parle !!!
pour ma part mes préférées sont recherchev, index et equiv, sommeprod, liretableaucroisédynamique, decaler et de plus en plus max ou min au lieu de si.
Cordialement
 

Discussions similaires