Aide Excel

Forum d'aide et d'entraide sur Excel : cours, astuces, tutoriaux...
 
AccueilPortailFAQRechercherS'enregistrerMembresGroupesConnexion

Partagez | 
 

 [Cours] Les types de données

Aller en bas 
AuteurMessage
KiWin
Administrateur
avatar

Nombre de messages : 155
Localisation : Isère - France
Date d'inscription : 16/08/2005

MessageSujet: [Cours] Les types de données   Lun 5 Sep à 11:41

Les types de données



Lorsque l'on utilise des variables dans la création de formules et de macros sous Excel, il est nécessaire de leur définir un type de données. Mais pourquoi définir un type de données ? Et comment savoir quel type de données choisir ? C'est ce que allons apprendre ici.


Bien qu'il ne soit généralement pas obligatoire de définir explicitement un type de données aux variables que l'on utilise, nous avons tout intérêt à le faire.

Tout d'abord cela permet à Excel de savoir comment traiter les variables. Pour rappel, une variable c'est un conteneur dans lequel on place une valeur qui peut être modifiée selon besoin dans une fonction ou une macro. Par exemple le nombre de feuilles d'un classeur, le contenu d'une cellule précise, etc. Excel ne traitera pas de la même manière une valeur contenant un prénom (texte) et une valeur contenant un age (nombre).

Ensuite Excel place chaque variable utilisée dans la mémoire de l'ordinateur. Et si l'on définit un type de données à notre variable, Excel lui réserve en fonction une place suffisante en mémoire. En l'absence de définition d'un type de donnée, Excel affecte le type Variant à la variable en mémoire, généralement suffisamment grand pour la plupart des besoins, mais aussi généralement trop grand pour la plupart des besoins. De fait, une macro fonctionnera théoriquement plus vite si les données qu'elle doit traiter on une place fixe en mémoire.

On définit donc le type de donnée d'une valeur en fonction de deux paramètres : le format de son contenu et éventuellement sa grandeur.


Voici un résumé de types de données les plus courants :

String : type de donnée au format texte, la valeur contient une chaîne de caractères (potentiellement jusqu'a 2 milliards de caractères). Taille mémoire de 10 octets + longueur de la chaîne.

Boolean : type de donnée logique, la valeur peut avoir deux états : vrai (True) ou faux (False). Taille mémoire de 2 octets. Si par exemple on utilise une variable de type boolean pour vérifier si une cellule est vide (If Range("A1").Value = "" Then MaVariable = False), on peut la réutiliser plus loin pour conditionner l'exécution d'une partie du code (If MaVariable = True Then...).

Object : type de donnée qui représente un objet Excel. Taille mémoire de 4 octets. Pratique pour désigner un objet à l'aide d'une variable, par exemple si vous désignez la cellule Workbooks("MonFichier.xls").Worksheets("Mafeuille").Range("A1") à plusieurs reprise dans votre code, définir une variable désignant cette cellule vous évitera de taper tout le code servant à désigner la cellule :

Dim MaVariable As Object
MaVariable = Workbooks("MonFichier.xls").Worksheets("Mafeuille").Range("A1")

(plus loin :)
If MaVariable.Value = 0 Then ...

Date : type de donnée numérique au format date. Chaque date est représentée dans Excel par un nombre, 1 = le 01/01/100, 2 = 02/01/100 etc. Ce type de donnée indique donc que ce nombre représente une date. Taille en mémoire de 8 octets.

Byte : type de donnée numérique représentant un nombre compris entre 0 et 255 inclus. Taille en mémoire de 1 octet.

Integer : type de donnée numérique représentant un nombre compris entre -32 768 et 32 767 inclus. Taille en mémoire de 2 octets.

Long : type de donnée numérique représentant un nombre compris entre -2 147 483 648 et 2 147 483 647 inclus. Taille en mémoire de 4 octets.

Variant : type de donnée polyvalent qui peut soit contenir une valeur numérique soit une chaîne de caractères. C'est le type de donnée utilisé par défaut par Excel lorsque une variable n'est pas de type de donnée explicitement défini.
La taille en mémoire de la variable dépend alors de si elle contient du texte ou un nombre, mais cette taille mémoire est toujours plus grande que pour une variable ayant un type de donnée bien défini. Etant donné qu'une variable de type Variant contenant du texte prendra outre la longueur de la chaîne de caractères, 22 octets en mémoire, contre 10 + longueur de la chaîne pour un type String, et étant donné qu'une variable de type Variant contenant un nombre prendra 16 octets en mémoire contre 1 à 4 octets dans la plupart de cas (types Byte à Long), vous voyez l'intérêt de définir précisément un type de variable autre que Variant.


Auteur(s) : KiWin
- Première publication le : 05/09/05
- Dernière modification le : 05/09/05
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://aide-excel.forumactif.com
 
[Cours] Les types de données
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Ouvrir un fichier dans Mapsource sans effacer les données en cours?
» Perte de données
» [Résolu] Recupération données sur DVD RW
» Perte des données sur XP. Possibilité de récupération ?
» sauvegarder les données GPS

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Aide Excel :: Entraide & apprentissage :: Cours et astuces-
Sauter vers: