Declaration de tableau

  • Initiateur de la discussion Initiateur de la discussion fgehin
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

fgehin

XLDnaute Junior
Bonjour à tous!

Je voudrais savoir s'il est possible de créer un tableau qui a 2 colonnes et n lignes et que la colonne 1 contiennent des données (integer par exemple) et la colonne 2 des range.
Si oui, est-ce que vous pouvez me dire comment ça se déclare?...

D'avance merci.
 
Re : Declaration de tableau

Bonsoir

Il faut utiliser l'instruction Type

"Type, instruction
Instruction utilisée au niveau module pour créer un type de données défini par l'utilisateur contenant un ou plusieurs éléments."
ce qui permet de définir une structure de données

Par exemple
Type DataClient
NomCli As String
AdresseCli As String
CPCli As integer
End Type

Ensuite on déclare un tableau avec comme donnée la structure définie avec Type

Dim clients() as DataClient

Pour acceder à une donnée

Clients.NomCli(1)="TOTO"


A tester

JP
 
Re : Declaration de tableau

Merci beaucoup Wilfried!
J'ai maintenant un nouveau message d'erreur à la compilation: "Invalid qualifier"... 😕

Je vous met mon code ci-dessous:

Type Tableau_Tri
date As Integer
tombstone As Range
End Type

Sub test()

Dim Tableau_1() As Tableau_Tri

Tableau_1.date(1) = Worksheets("Sheet1").Range("A1").Value
Tableau_1.tombstone(1) = Worksheets("Sheet1").Range("B1")

End sub

des idées lumineuses?...
 
Re : Declaration de tableau

Dsl je ne suis pas une pro du vba, alors je vois pas trop ce que c'est que l'adresse de la plage... 🙄
Ce que je sais, c'est que je veux faire un tableau qui trie des cellules (ces cellules contiennent des images, et en fait ce sont les images attachées aux cellules que je veux trier).

Par ailleurs, le set (oups je l'avais oublié...) ne change rien, j'ai tjs le même message d'erreur et il est au niveau de cette ligne:
Tableau_1.date(1) = Worksheets("Sheet1").Range("A1").Value
 
Re : Declaration de tableau

en fait j'ai trouvé que le problème venait du fait que la définition de mon type.
Tableau_Tri.date(1) ne fonctionne pas, par contre ça marche avec Tableau_Tri.date.
La question est donc.... comment fait-on un tableau qui contient des types "Tableau_Tri" defini auparavant...?
 
Re : Declaration de tableau

Bonjour

Date est un mot reservé VBA qui te permet de mettre la date du jour dans une variable ou dans une cellule

Code:
Type Tableau_Tri
        wdate As Date ' Si c'est une date, il faut mieux utiliser le type  appropriée
        tombstone As Range
End Type

Sub test()
Dim Tableau_1(2) As Tableau_Tri

      Tableau_1.wdate(1) = Worksheets("Sheet1").Range("A1").Value
      Set Tableau_1.tombstone(1) = Worksheets("Sheet1").Range("B1")

End sub

essaye comme cela
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 styles et formules
Réponses
9
Affichages
254
  • Question Question
Microsoft 365 Listbox
Réponses
3
Affichages
448
Réponses
20
Affichages
698
Retour