Trouver la Nième plus petite valeur d’un tableau

On a souvent besoin de trouver la valeur mini ou maxi d’un tableau de valeurs numériques mais plus rarement la 10ème plus petite valeur, la 10 000 000ème… Je vous présente ici une implémentation en VBA d’un algorithme tout en un, d’une rare simplicité qui sélectionne en une fraction de seconde la valeur du rang désiré.
Lire la suite

Remplacer les caractères accentués d’une chaîne

Lors d’une recherche de sous-chaine, il est parfois nécessaire de substituer les lettres accentuées par leurs équivalents sans accent.
En effet, le moteur Jet des bases de données Access est insensible à la casse des caractères mais ne fait pas le lien entre un caractère accentué et son équivalent.
La FAQ propose déjà deux fonctions ayant le même objectif, mais voici une troisième voie qui se caractérise par sa vitesse d’exécution et la possibilité ou non de conserver la casse des caractères de la chaine initiale.
Lire la suite

Approximer, en double précision, la loi normale gaussienne et son inverse

Je vous propose deux fonctions en VBA pour Access qui estiment la loi normale (ou loi de Laplace-Gauss) et son inverse en double précision. Pour rappel, Excel propose en standard ces fonctions (NORMDIST, NORMINV, NORMSDIST, NORMSINV) et des fonctions encore plus précises depuis Excel 2010 (NORM_DIST, NORM_INV, NORM_S_DIST, NORM_S_INV).

Courbe de Gauss
Lire la suite