Bonjour
J'aimerais savoir si c'est possible de créer une collection à 2 colonnes ?
Si oui, es-ce que vous connaissez la syntaxe ? J,arrive seulement à créer une collection à une colonne.
Merci
Alexandre
Bonjour
J'aimerais savoir si c'est possible de créer une collection à 2 colonnes ?
Si oui, es-ce que vous connaissez la syntaxe ? J,arrive seulement à créer une collection à une colonne.
Merci
Alexandre
Je pense que tu peux y arriver en utilsant une classe collection de ta collection
Bonjour,
tu pourras peut-être trouver ce que tu cherche sur ce tuto par ouskel'n'or
A+
Bonjour,
a ma connaissance, cela n'existe pas. La notions de colonne c'est pour les tableaux.
Tu aurais deux façon l'implémenter:
1) Utiliser un objet qui regroupe les objets/propriétés de tes colonnes
=> a mon avis la meilleure solution
2) gérer en même temps deux collections
=> risqué,
Envoyé par Msdn
trois méthodes possibles en exemple
la première fonctionne avec un module de classe nommé ma classe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46 Function deuxcolclasse() Dim data As New maclasse Dim monvar As Variant Dim macoll As New Collection data.data1 = "un" data.data2 = 1 macoll.Add data Set data = Nothing data.data1 = "deux" data.data2 = 2 macoll.Add data Set data = Nothing For Each monvar In macoll Debug.Print monvar.data1 Next monvar End Function Function deuxcolarray() Dim data(1 To 2) As Variant Dim macoll As New Collection Dim monvar As Variant data(1) = "un" data(2) = 1 macoll.Add data data(1) = "deux" data(2) = 2 macoll.Add data For Each monvar In macoll Debug.Print monvar(2) Next monvar End Function Function deuxcolpairimpair() Dim ligne As Integer Dim colonne As Integer Dim macoll As New Collection macoll.Add (1) macoll.Add ("un") macoll.Add (2) macoll.Add ("deux") ligne = 1 colonne = 1 MsgBox ("élélement 2,1 est" & macoll((((ligne - 1) * 2)) + colonne)) End Function
bonus si l'ordre est important
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Public data1 As Variant Public data2 As Variant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Function deuxcolparclef() Dim boucle As Integer Dim macoll As New Collection For boucle = 1 To 12 macoll.Add Item:=boucle, key:=(CStr(boucle) & "(1)") macoll.Add Item:=Format(DateSerial(2007, boucle, 1), "MMMM"), key:=(CStr(boucle) & "(2)") Next boucle 'démo MsgBox (macoll("5(2)")) End Function
Partager