Les fonctions peuvent êtres considérées
comme des extentions des opérateurs. Visual Basic
contient un grand nombre de fonctions intégrées
(plus de cent vingt). Si aucune d'entre elles ne permet
de résoudre un probleme particulier, rien ne s'oppose
à la création d'une fonction personnalisée
sous la forme d'une procédure Function
Les
fonctions mathématiques
Il
existe treize fonctions mathématiques de base
| Fonction |
Description |
| Abs |
Valeur
absolue |
| Atn |
Arc
tangente |
| Cos |
Cosinus |
| Exp |
Exponentielle |
| Fix |
Partie
entière par troncature de la partie décimale |
| Int |
Plus
grand entier <== Expression argument |
| Log |
Logarithme
naturel (base e) |
| Randomize |
Instruction
d'initialisation de la fonction générateur
aléatoire Rnd |
| Rnd |
Valeur
aléatoire positive inférieure à 1
|
| Round |
Arrondit
à un nombre spécifié de positions
décimales |
| Sgn |
Valeur
du signe (1, 0 ou -1) |
| Sin |
Sinus |
| Sqr |
Racine
carrée |
| Tan |
Tangente |
fonctions
particulières
Randomize
est une instruction, mais elle est citée ici pour
son appartenance fonctionnelle. |
L'argument
d'une fonction est entouré par des parenthèses
dblc =
Sqr(dbla ^2 + dblb ^2)
Cette
ligne de code calcule la longueur de l'ypothénuse d'un
triangle rectangle en utilisant la formule de pythagore
Pour générer un nombre aléatoire compris
entre des limites définies, il est fréquement
fait appel à une formule utilisant la fonction int,
par exemple pour calculer une valeur aléatoire dans
le domainte entre 10 et 20 :
intAléa
= Int(11 *rnd) + 10
D'autres
fonctions peuvent être déduites des fonctions
intégrées en utilisant des formules mathématique
connue. Outre des fonctions trigonométriques et des
fonctions hyperboliques, voici la formule du calcue logarithme
de base N :
LogN(x)
= Log(x) / Log(N)
Les
fonctions financières
Les
financiers bénéficient dans Visual Basic de
treize fonctions intégrées relatives à
leur domaine d'intétêt. Faisant référence
à un domaine d'application particulier, elles ne sont
décrites ici que de manière très sommaire.
Vous trouverez dans l'aide en line tous les détails
de ces fonctions, ainsi que des exemples exhaustifs.
|
Fonction |
Description |
|
DDB,
SLN, SYD
|
Amortissements |
| NPV,
PV |
Valeur
nette |
| FV |
Annuités |
| NPer |
Nombre
d'échéances |
| Ipmt,
Pmt, PPmt |
Annuités |
| IRR,
MIRR |
Taux
de rendement interne |
| Rate |
Taux |
Les
fonctions de chaînes de caractères (String)
De
nombreuses fonctions de chaînes de caractères
existent en plusieurs variantes. En règle générale,
elles renvoient une variable de type variant. Si le caractère
de désignation de type "chaîne de caractères"
($) suit le nom de la fonction, le résultat est également
de type "chaîne de caractères"
Certaines
fonctions existent dans une autre version , dont le nom se
termine par B. Elles n'opèrent pas avec les caractères,
mas avec des octets d'une chaîne de caractère,
ce qui est utilile dans le cas des jeux de caractères
sur 2 octets (Unicode, DBCS). Il existe également des
variantes combinant ces deux caractères (B$)
ANSI,
DBCS, Unicode
Le
jeu de caractères ANSI est le plus courant sur
pc, et il utilise 1 octet par caractère, Il est
ainsi capable de réprésenter 256 caractères
différents. |
Certaines
langues orientales ne peuvent pas se contenter du jeu de 256
caractères ANSI. Winsows utilise dans ce cas un shéma
de codage 'DBCS) composé de 2 octets par caractère,
dont la premières moitié correspond au jeu ANSI,
et dont une valeur supérieure à 128 du premier
octet signifie que l'octet suivant représente des caractères
nn latins.
Unicode
est également un shéma de codage à 2
octets, qui utilise, contrairement à DBCS, systématiquement
2 octets par caractère et qui permet la représentation
d'un maximum de 65 536 caractères différents
Unicode n'est actuellement totalement exploité que
par Windows NT
|
Fonction |
Description |
|
Filter
|
Le
filtre d'une chaîne de caractères dans un
champ String |
| Format($) |
Formatage
d'une expression |
| FormatCurrency |
Formatage
d'une valeur monétaire |
| FormatDateNumber |
Formatage
d'une date |
| FormatPercent |
Formatage
d'un pouventage |
| Instr(début%,
chaine$, sous chaine$) |
Renvoie
la position d'une chaîne de caractères dans
une autre |
| InstrRev |
Renvoie
la position d'une chaine de caractères dans une
autre en commençant par la fin |
| Join |
Assemble
une chaîne de caractères à partir
d'éléments séparés |
| LCase($) |
Conversion
des majuscules en minuscules |
| Left(chaine$,
nombre%) |
Renvoie
un certain nombre de caractères d'une chaîne
de caractère |
| Len(chaine$) |
Renvoie
le nombre de caractères d'une chaîne de caractères |
| LTrim($) |
Supprime
les espaces de gauche |
| Mid($,deb%,combien%) |
Renvoie
un certain nombre de caractère à partir
d'une chaine de caractère |
| Replace |
Remplace
certains caractères dans une autre chaîne
de caractère |
| Right(chaine$,
nombre%) |
Renvoie
un certain nombre de caractères à partir
de la droite |
|
Rtrim($) |
Supprime
les espaces de droite |
| Space($) |
Crée
une chaîne de caractères contenant des espaces |
| Split |
Scinde
une chaîne de caractères en éléments
séparés |
| StrConv |
Conversion
de chaînes de caractères de différents
types |
| StrComp |
Comparaison
de deux chaînes de caractères |
| String($) |
Crée
une chaîne de caractères contenant le même
caractère |
| StrReverse |
Inverse
l'ordre des caractères dans une chaîne |
| Trim($) |
Supprime
les espaces de droite et de gauche |
| UCase($) |
Conversion
des minusculs en majuscules |
La
fonction offrant le plus large choix est la fonction Format,
qui permet de représenter des données numériques,
des dates et des chaînes de caractères selon
des modèles de formats prédéfinis ou
personnalisés. Le grand nombre de possibilités
qu'elle propose implique de consulter l'aide en ligne.
Les
fonctions de conversion
Pour
procéder soi-même aux conversions de types de
données et ne pas laisser ce soin aux mécanismes
automatique, il faut utiliser les fonction de confersion qui
transforment une expression explicitement dans le type désiré.
|
Fonction |
Description |
|
CBool
|
Boolean |
| Cbyte |
Byte |
| CCur |
Currency |
| CDate |
Date |
| CDbl |
Double |
| CDec |
Decimal |
| CInt |
Integer |
| Clng |
Long |
| CSng |
Single |
| CStr |
String |
| Cvar |
Variant |
Il
faut cependant veiller à ce que l'expression à
convertir ne dépasse pas le domaine de validité
du type de donnée cible. L'apel de la fonction
CInt(54321)
Renvoie
ainsi une erreur.
Les
autres fonctions de conversion, dont la version suivie par
le caractère W est convue pour les caractères
Unicode, sont :
|
Fonction |
Description |
|
Asc(B
| W)
|
Conversion
du premier caractère d'une chaine en code |
| Chr(B
| W,$) |
Conversion
d'un code en caractère |
| Hex($) |
Nombre
en représentation hexadcimale |
| Oct($) |
Nombre
en représentation octale |
| Str($) |
Conversion
d'un nombre en chaîne de caractères |
| Val |
Conversion
d'une chaîne de caractères en nombre |
Les
fonctions de date et de temps
Comme
nous l'avons déjà mentionné. La dae et
l'heure du système sont enregistréées
sous la forme d'un nombre décimal. Toutes les fonctions
de date et d'heure s'en servent.
|
Fonction |
Description |
|
Date($)
|
Date
Système |
| DateAdd |
Addition
d'un interrvalle de temps à une date |
| DateDiff |
Différence
entre deux dates |
| DatePart |
Partie
d'une valeur de date |
| DateSerial |
Date
obtenue à partir du numéro d'année,
de mis et de jour |
| DateValue |
Conversion
d'une chaîne de caractères en date |
| Day |
Numéro
du jour du mois |
| Hour |
Numéro
de l'heure |
| Minute |
Numéro
de la minute |
| Month |
Numéro
du mois |
| MonthName |
Nom
du mois |
| Now |
Date
et heure système |
| Second |
Seconde
en nombre |
| Time($) |
Temps
système |
| Timer |
Nombre
de secondes écoulées depuis minuit |
|
TimeSerial |
Heure
obtenue à partir des heures, minutes et secondes |
| TimeValue |
Conversion
d'une chaîne de caractères en heure |
| Weekday |
Jour
de la semaine |
| WeekDayName |
Nom
du jour de la semaine |
| Year |
Numéro
de l'année |
Les
fonctions de gestion des fichiers
Les
fonctions de fichiers permettent de réaliser de nombreuse
tâches de gestion des fichier (appel des information
des fichier, pilotage des opérations de lecture et
d'écriture, etc.).
|
Fonction |
Description |
|
Curdir($)
|
Chemin
d'accès courant |
| Dir($) |
Renvoie
le nom du ficier ou du lecteur |
| EOF
(End Of File) |
teste
la fin du fichier |
| FileAttr |
Mode
d'accès |
| FileDateTime |
Date
et heure de la dernière modification |
| FileLen |
Taille
du fichier en octets |
| FreeFile |
Prochain
numéro de fichier lire |
| GetAttr |
Renvoie
les attributs du fichier |
| Input(B,$) |
Renvoie
les données d'un fichier séquentiel |
| LoadPicture |
Charge
des données à partir d'un fichier de ressources |
| LoadResData |
Charge
des données à partir d'un fichier de ressources |
| LoadResString |
Charge
une chaîne de caractère à partir d'un
fichier de ressources |
| Loc |
Position
courante de lecture ou d'écriture dans un fichier |
| LOF |
Longueur
du fichier ouvert en octets |
| Seek |
Position
courante dans un fichier |
|
Spc |
Définir
la position de sortie par des espaces (uniquement avec
print) |
| Tab |
Définir
la position de sortie par des tabulations (uniquement
avec print) |
Les
fonctions de tableaux
|
Fonction |
Description |
|
Array
|
Crée
un tableau dans une variable variant |
| LBound |
Plus
petit index de la dimension indéquée (Lower
Bound) |
| UBound |
Plus
grand index de la dimention indiquée (Upper Bound) |
Les
fonctions de sélection
Ces
fonctions peuvent être utilisées pour choisir
une valeur parmi plusieurs possibilités. Elles se distinguent
par le nombre de possibilités qu'elles offrent et leur
processus de choix.
|
Fonction |
Description |
|
Choose
|
Extrait
une valeur d'une liste d'arguments |
| IIf |
Extait
une valeur parmi deux |
| Switch |
Extrait
une valeur d'une liste |
Les
fonctions de traitement d'erreur
Trois
fonctions permetent le traitement des errerus d'éxécution
:
|
Fonction |
Description |
|
CVErr
|
Déclenchement
d'une erreur personnalisée |
| Error($) |
Fournit
le message correspondant au numéro d'erreur |
| IsError |
Vérifie
le code d'erreur d'une expression numérique |
Fonctions
diverses
Les
fonctions suivantes snt utilisées en liaison avec les
objets ActiveX. Pour le réglage de la couleur ou la
communication avec le système d'exploitation.
|
Fonction |
Description |
|
CallByName
|
Définit
les propriétés d'objets ou en apelle les
méthodes lors de l'exécution |
| Command |
Renvoie
les arguments de la ligne de commande |
| CreateOject |
Crée
un objet ActiveX |
| DoEvents |
Passe
le pilotage au système d'exploitation |
| GetAllSettings |
Renvoie
la loste des valeurs des clés du Registre |
| GetAutoServerSettings |
Renvoie
l'état d'enregistremet d'un objet ActiveX |
| GetObject |
Re,vpoe
une référence à un objet ActiveX |
| GetSetting |
Renvoie
Une valeur de clé du Registre |
| Environ |
Renvoie
la variable d'environnement du système d'exploitation |
| InputBox |
Affiche
une boîte de dialogue de saisie |
| MsgBox |
Affiche
une boîte de dialogue de message |
| QBColor |
Renvoie
le code de couleurs pour une couleur choisie parmi seize
autres |
| RGB |
renvoie
le code de couleurs en combinaison entre Rouge, Vert et
bleu |
| Shell |
Exécute
une autre application |
|