Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Général VBA
Général VBA Forum général VBA . Pour les logiciels spécifiques (Access, Excel, Word, ...), postez dans les bons sous forums.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/08/2007, 11h14   #1
Membre régulier
 
Inscription : avril 2006
Messages : 163
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 163
Points : 80
Points : 80
Par défaut Liste, enum en VBA

Bonjour,

Celà fait un moment que je n'ais pas utilisé le vba, du coup j'ai du mal a retrouver certaines petite chose, je demande donc votre aide. Malgré mes recherches sur google, je ne trouve pas ce que je veux.

Je souhaite créer un tableau de taille fixe, et initialisé par moi même avec une syntaxe de ce genre là:

Code :
monTableau(10) = {A,B,..}
Je n'arrive pas à trouver la bonne syntaxe, du coup ça me met des erreurs.

De plus comment déclare ton un tableau à plusieurs dimensions (trois dimensions), est ceci monTableau(3,3,3).

Merci
__________________
Vive le C => Quoique pas sympa pour la mémoire de mon PC.

Seul le chat le savait!!!!

De la rigueur en programmation est maître mot!!!
theshark85 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 11h22   #2
Membre Expert
 
Inscription : avril 2006
Messages : 1 318
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 1 318
Points : 1 591
Points : 1 591
bonjour,

il faut voir en autres les fonctions et instructions :
  • Array()
  • Redim
  • Split()
cordialement,

philippe
philben est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 12h09   #3
Membre régulier
 
Inscription : avril 2006
Messages : 163
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 163
Points : 80
Points : 80
Alors, j'ai trouvé une partie de ma solution, mais je n'arrive pas a mettre tout ceci en variable globale. Quand tout ets dans une fonction, pas de probleme mais en globale erreur.

Code :
1
2
3
4
5
6
7
8
 
Dim A As Variant
Dim B As Variant
Dim C As Variant
 
A= VBA.Array("1", "1", "1")
B= VBA.Array("1", "1", "1") 
C= VBA.Array("1", "1", "1")
Erreur: instruction incorrect à l'exterieure d'une procédure
__________________
Vive le C => Quoique pas sympa pour la mémoire de mon PC.

Seul le chat le savait!!!!

De la rigueur en programmation est maître mot!!!
theshark85 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 12h38   #4
Membre Expert
 
Inscription : avril 2006
Messages : 1 318
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 1 318
Points : 1 591
Points : 1 591
bonjour,

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
Public Const X As Long = 5
Private Const Y As Boolean = True
 
Public A As Variant  'Portée : globale
Private B As Integer 'Portée : Projet
Dim C As Double      'Portée : module
 
Public Sub InitVars()
   A = VBA.Array("2", "3")
   B = 1
   C = 1.5
End Sub
Initialisation des variables seulement dans une méthode contrairement aux constantes (mais limitée à des valeurs simples, voir aide d'Access).

cordialement,

Philippe
philben est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 14h06   #5
Membre régulier
 
Inscription : avril 2006
Messages : 163
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 163
Points : 80
Points : 80
Arff, je ne veux pas que tout ceci se retrouve dans une méthode aussi.

Je sais qu'il y a une possibilité, d'initialisé un tableau pas forcement en array.

Avez-vous une idée?
__________________
Vive le C => Quoique pas sympa pour la mémoire de mon PC.

Seul le chat le savait!!!!

De la rigueur en programmation est maître mot!!!
theshark85 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/08/2007, 16h44   #6
Membre Expert
 
Inscription : avril 2006
Messages : 1 318
Détails du profil
Informations forums :
Inscription : avril 2006
Messages : 1 318
Points : 1 591
Points : 1 591
re bonjour,

pour déclarer un tableau, on peut :
Code :
1
2
 
Dim x(0 to 5, 11, 8 to 9) As Long
mais lui affecter des valeurs (hors 0 ou ""), je sais pas.

cordialement,

philippe
philben est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h41.


 
 
 
 
Partenaires

Hébergement Web