Fonctions VBA

Vous trouverez sur cette page les fonctions VBA les plus utilisées, expliquées à l'aide d'un exemple simple.

D'autres tutoriels et astuces VBA sont disponibles dans Astuces VBA.

Boîtes de dialogue

InputBoxAffiche une boîte de dialogue invitant l'utilisateur à entrer du texte.
MsgBoxAffiche une boîte de dialogue invitant l'utilisateur à cliquer sur un bouton.

Dates et heures

CDateConvertit une valeur en date.
DateRenvoie la date actuelle.
DateAddAjoute l'intervalle de temps spécifié à une date.
DateDiffRenvoie un nombre entier correspondant au nombre d'intervalles de temps spécifié entre 2 dates.
DatePartRenvoie un nombre entier correspondant à une donnée d'une date.
DateSerialRenvoie une date en fonction d'une année, d'un mois et d'un jour.
DateValueConvertit une chaîne de caractères en date.
DayRenvoie un nombre entier correspondant au jour d'une date.
FormatRenvoie une chaîne de caractères en fonction d'une date ou d'un nombre dans le format spécifié.
HourRenvoie un nombre entier correspondant à l'heure d'une date ou d'une heure.
IsDateRenvoie True si la valeur est une date (ou peut être convertie en date) ou False si ce n'est pas le cas.
MinuteRenvoie un nombre entier correspondant aux minutes d'une date ou d'une heure.
MonthRenvoie un nombre entier correspondant au mois d'une date.
MonthNameRenvoie le nom du mois en fonction du numéro du mois.
NowRenvoie la date et l'heure actuelle.
SecondRenvoie un nombre entier correspondant aux secondes d'une date ou d'une heure.
TimeRenvoie l'heure actuelle du système.
TimerRenvoie le nombre de secondes écoulées depuis minuit.
TimeSerialRenvoie une heure en fonction d'une heure, de minutes et de secondes.
TimeValueConvertit une chaîne de caractères en heure.
WeekdayRenvoie le numéro du jour de la semaine en fonction d'une date.
WeekdayNameRenvoie le nom du jour en fonction du numéro du jour de la semaine.
YearRenvoie un nombre entier correspondant à l'année d'une date.

Nombres et math

AbsRenvoie la valeur absolue d'un nombre.
CInt / CLngConvertit une valeur numérique en nombre entier en arrondissant à l'entier le plus proche.
CSng / CDblConvertit une valeur numérique en nombre à virgule.
Int / FixRenvoie la partie entière d'un nombre.
RGBRenvoie un nombre entier correspondant à une couleur au format RGB.
RndRenvoie un nombre aléatoire inférieur à 1 et supérieur ou égal à 0.
RoundArrondit un nombre en fonction du nombre de décimales spécifié.
ValRenvoie les nombres contenus dans une chaîne de caractères.

Tableaux

ArrayRenvoie un tableau contenant les valeurs passées en arguments.
ChooseRenvoie une valeur de sa liste d'arguments en fonction d'un numéro.
JoinRegroupe les valeurs d'un tableau en une chaîne de caractères, en définissant ou non un délimiteur.
SplitDivise une chaîne de caractères en fonction d'un délimiteur pour obtenir un tableau de valeurs.
UBoundRenvoie le plus grand indice disponible pour la dimension spécifiée d'un tableau.

Tests et conditions

IIfRenvoie l'une des 2 valeurs passées en argument en fonction d'une condition.
IsArrayRenvoie True si la variable pointe vers un tableau ou False si ce n'est pas le cas.
IsDateRenvoie True si la valeur est une date (ou peut être convertie en date) ou False si ce n'est pas le cas.
IsEmptyRenvoie True si la variable a été initialisée ou False si ce n'est pas le cas.
IsMissingRenvoie False si l'argument optionnel a été renseigné ou True si ce n'est pas le cas.
IsNumericRenvoie True si la valeur peut être considérée comme un nombre ou False si ce n'est pas le cas.
SwitchRenvoie la valeur correspondant à la première expression qui retourne True.
VarTypeRenvoie un nombre entier correspondant au type de la variable.

Texte

AscRenvoie le nombre entier correspondant à un caractère.
ChrRenvoie le caractère correspondant au nombre entier passé en argument
FormatRenvoie une chaîne de caractères en fonction d'une date ou d'un nombre dans le format spécifié.
InStrRenvoie un nombre entier correspondant à la position d'une valeur dans une chaîne de caractères.
InStrRevRenvoie un nombre entier correspondant à la position d'une valeur dans une chaîne de caractères en commençant par la droite.
LCaseConvertit une chaîne de caractères en minuscules.
LeftRenvoie le nombre de caractères spécifié d'une chaîne de caractères depuis la gauche.
LenRenvoie le nombre de caractères d'une chaîne de caractères.
MidRenvoie le nombre de caractères spécifié d'une chaîne de caractères en commençant par le numéro de caractère défini.
ReplaceRenvoie une chaîne de caractères après avoir remplacé la ou les sous-chaînes correspondant à la valeur recherchée.
RightRenvoie le nombre de caractères spécifié d'une chaîne de caractères depuis la droite.
StrReverseRenvoie une chaîne de caractères après avoir inversé l'ordre des caractères.
TrimRenvoie une chaîne de caractères après avoir supprimé les espaces à gauche et à droite de la chaîne de caractères.
UCaseConvertit une chaîne de caractères en majuscules.

Fonctions complémentaires

Un add-in gratuit pour Excel comprenant 45 nouvelles fonctions VBA (+ 51 fonctions Excel) a été développé et mis à disposition par Excel-Pratique.

Cliquez ici pour découvrir toutes ces nouvelles fonctions VBA : liste des fonctions complémentaires pour VBA