type de donnée défini par l'utilisateur

Hervé

XLDnaute Barbatruc
Bonjour tout le monde

A mon tour de poser une petite question :p

J'ai un peu honte de poser une question pareille, mais vraiment je sais pas comment y répondre.

Je sais travailler avec des types de données, ce genre de macro (tiré de l'aide) :

Type EmployeeRecord ' Crée un type défini par l'utilisateur.
ID As Integer ' Définit des éléments de type de données.
Name As String * 20
Address As String * 30
Phone As Long
HireDate As Date
End Type

Mais je ne sais pas à quoi ca sert :)

En somme je sais faire, mais je ne sais pas quand je dois utilisé ce type de 'procédure'.

En plus je n'en vois jamais dans les codes des pros du forum.

Merci pour vos futurs réponses et de ne pas vous moquer :(

salut à tous
 

Charly2

Nous a quittés en 2006
Repose en paix
Salut Hervé, le forum,

Lorsque je programmais (Basic, C, Pascal), ce type de données défini par l'utilisateur me servait à extraire des données d'un fichier dont les enregistrements correspondaient à ma définition.

C'est un exemple d'utilisation, mais si la longueur des données d'un fichier est fixe et connue à l'avance, ça peut être très utile...

Amitiés
Charly
 

herve62

XLDnaute Barbatruc
Supporter XLD
Hervé

Moi aussi j'aide , mais je pose des questions aussi, sans honte.
enfin ...
Declarer des variables sert a limiter le format un peu comme si tu vas dans 'format > cellules > nombre' , avec standard, %, date etc....
mais aussi de tps en tps sert a garder une variable durant tout le pg
car generalement lorsque l'on passe d'une 'Sub' à une autre on perd la donnée ( je sais j'ai cherché longtemps)
donc ex:
Private nom As Integer : permettra de conserver ta donnée 'nom' durant toutes les 'Sub' utilisées avant de sortir definitivement, generalement avec des USF

Bon W.E.
Hervé ( précisé 62 car j'ai vu vu qu'on était en force)
 

Hervé

XLDnaute Barbatruc
Bonjour charly, didier, hervé.


Désolé charly et didier, mais j'ai pas compris vos réponses, pourriez vous etre plus précis, merci.

Hervé, ne te méprend pas sur mes propos, j'ai pas dit que posé des questions etaient honteux (c'est ne pas poser des questions qui me paraitrait idiot), mais simplement que je me sens con de savoir utiliser quelque chose sans savoir à quoi ca sert.

merci pour ta réponse, mais je sais à quoi sert les déclarations de variables, ce que je recherche c'est dans quelles cas doit on leur données un caractère particulier en passant par une instruction type.

salut

Message édité par: hervé, à: 04/11/2005 16:31
 

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
Bonjour Hervé, Charly2, dg62, herve62, le forum

Les types définis par l'utilisateur sont trés pratiques pour travailler
des objets à multiples valeurs
en exemple
un ensemble de x valeurs contenant un sous ensemble de y valeurs, chaque valeur de y ayant de multiples propriétés
déclaration du type de y
Type Analyse_R
No_Glob As Integer
Nbr_Raccords As Integer
Date_Raccord() As Date
Descendante() As String
Montante() As String
End Type
je peux définir un tableau multidimensionnel ou non du genre
Dim Tab(1 to 10, 1 to 20) as Analyse_R

je peux stocker ou interroger chaque donnée de y par une simple commande
Tab(nx,ny).No_Glob
me renverra la valeur No_Glob du sous ensemble y(ny) de l'ensemble x(nx)
je peux même y stocker des tableaux multi dimensionnels ou pas.

En clair on peut créer des types données correspondant précisément à nos besoins ce qui facilite grandement les traitements.
dans l'exemple, je peux appliquer des traitements particuliers à l'ensemble des données X ou à l'ensemble des données y d'un groupe ou à l'ensemble des données d'un élément y

Je ne sais pas si j'ai vraiment été clair, mais bon, c'est pas vraiment facile à expliquer.
En pratique cela peut être trés utile selon les besoins

Cordialement, A+
 

dg62

XLDnaute Barbatruc
re le fil


les fichiers à acces direct permettait grace un n° d'enregistrement d'acceder directement à l'enregistrement et d'extraire les données contenues.

cela passait en basic par un type de déclaration qui ressemble bcp au variables utilisateur.


c'était bcp plus rapide qu'une lecture séquentielle des données.
 

Charly2

Nous a quittés en 2006
Repose en paix
Re à toutes et tous,

Hervé, supposons qu'une entreprise, pour des raisons d'efficacité, ait besoin d'un fichier du personnel exploitable par plusieurs programmes écrits dans des langages différents (si, si, ça existe !).

La longueur des données de chaque enregistrement est connu par tous les programmeurs.

Tu déclares ton type en connaissant les données :

Type Personnel
Direction As Integer
Nom(15) As String
Prenom(15) As String
....
End Type

Tu peux rapatrier toutes les données du fichier pour créer un tableau XL exploité par le service du personnel :

Dim DonneesEmploye(150) As Personnel

puis l'utiliser dans un fichier à accès aléatoire (ça existe aussi sous VBA) :

Open 'FichierPersonnel' For Random As #1 Len = Len(DonneesEmploye)
i = 0
Do While not EOF(1)
Get #1
 

Discussions similaires

Statistiques des forums

Discussions
312 963
Messages
2 093 998
Membres
105 906
dernier inscrit
aifa