VB : tableau en Constantes

eddys -  
 eximius55 -
Salut !!

Je vous savoir ... y a un moyen de declarer une constante en VB qui soit un tableau ?
Qd j'essaie de coder ca, il me dit que j peux pas mais j m'y prends ptet mal ...

En fait ce que j voulais faire, c'est coder en dur une liste de champs que j dois importer d'une base de données, pour pouvoir ensuite generer automatiquement la requete grace a cette liste ...
(j veux pas coder les champs en dur dans la requete pour pouvoir ajouter ou retirer facilement un champ dans le futur)

Voili voilou ... merci de toute aide ou toute idee aportee :o)

@+ !

3 réponses

  1. eximius55
     
    Salut Gilles,

    Effectivement VB n'aime pas trop ce type d'affectation, pour ma part je verrais les choses comme ca :

    ' Pour des contantes de type INTEGER
    Dim i As Integer
    Dim x As Integer

    Dim monTableau(20) As Integer
    i = 1
    For x = LBound(monTableau) To UBound(monTableau) - 1
    monTableau(x) = i
    MsgBox monTableau(x)
    i = i + 1
    Next

    'Et pour les constantes de type STRING
    Dim myArray1() As String
    Dim myString As String
    myString = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X"

    myArray1 = Split(myString, ",")

    For x = LBound(myArray1) To UBound(myArray1)
    MsgBox myArray1(x)
    Next
    2
  2. MarsuGL
     
    A chaque fois que j'ai codé en dur, je l'ai toujours regrété par la suite,
    un jour ou l'autre ton appli évolue et ton code en dur te genre.

    sinon au moins met le dans un fichier texte que tu charge.
    0
    1. eddys
       
      ouep j vois ce que tu veux dire

      En fait ce que j voulais faire justement c'est stocker ces fameux champs pour que la requete soit generee automatiquement

      Et du coup au niveau maintenance, t as plus qu'a changer ce tableau de constantes au lieu de changer toutes les portions de code (et differentes fonctions qui les utilisent) correpondants dans le source.

      J'ai po trouve mieux ... mais si des idees vous viennent j suis preneur :o)
      0
  3. gilles
     
    Bonjour, je veux declarer un tableau de 20 elements mais vb6.refuse toujour j'ai mis

    dim montableau() as integer={1, 2, 3, 4, 5,6,7, 8, 9, 10, 11,13, 17, 18, 12, 14, 15, 16, 19, 20}
    j'ai essayé mais il y a d'erreur aider moi svp!!!
    0
    1. eximius55
       
      Salut Gilles,

      Effectivement VB n'aime pas trop ce type d'affectation, pour ma part je verrais les choses comme ca :

      ' Pour des contantes de type INTEGER
      Dim i As Integer
      Dim x As Integer

      Dim monTableau(19) As Integer
      i = 1
      For x = LBound(monTableau) To UBound(monTableau)
      monTableau(x) = i
      MsgBox monTableau(x)
      i = i + 1
      Next

      'Et pour les constantes de type STRING
      Dim myArray1() As String
      Dim myString As String
      myString = "A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X"

      myArray1 = Split(myString, ",")

      For x = LBound(myArray1) To UBound(myArray1)
      MsgBox myArray1(x)
      Next
      0