salut tout le monde,
J'ai créer un tableau avec une macro et je souhaite le mettre en forme.
Avec le code que j’ai, je génère un ensemble de clés à partir de la sheet1 que je mets dans la ligne 2 de la sheet 2, je souhaite ordonner ces clés par catégorie et mettre chaque clé dans un ordre particulier dans sa catégorie , l'orde étant précisé dans une autre sheet nommé Table où on attribue à chaque clé une catégorie et un numéro de colonne particulier.
J’insère avec une macro automatiquement les clès et je souhaite dans un deuxième temps classer ces clès à l’aide d’une autre macro, qu'est ce que je dois faire ?
Ci-joint un exemple de mon tableau (mon tableau en réalité est plus grand que cela et avec une centaine de clés) avec un onglet supplémentaire qui précise la mise en forme que je souhaite avoir.
Le code avec lequel j'insere les clés est le suivant :
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 Sub test12() Dim PlageSource As Range Dim FeuilleResultat As Worksheet Dim NumColonneResultat As Integer Dim NumLigneResultat As Integer Dim Cell As Range Dim Un As Collection Dim i As Long Dim ValeurX As String ' nommer tous les endroits sur lesquels on travaille Set PlageSource = Worksheets("sheet1").Range("Z:Z") Set FeuilleResultat = Worksheets("sheet2") NumLigneResultat = 2 ' creer une liste sans doublons, d'après un tutorial de Silkyroad Set Un = New Collection On Error Resume Next 'Boucle sur la plage de cellule 'entre Z et X (-2), et le critère "Main" For Each Cell In PlageSource ValeurX = Cell.Offset(0, -2).Value If (Cell <> "" And ValeurX = "main") Then Un.Add Cell, CStr(Cell) Next Cell On Error GoTo 0 'Boucle sur les éléments de la collection 'les écrire dans feuille2, en changeant de colonne à chaque fois For i = 1 To Un.Count FeuilleResultat.Cells(NumLigneResultat, 3 + i) = CStr(Un(i).Value) Next i Set Un = Nothing End Sub
Si mon problème n'est pas clair je suis prêt à fournir plus d'information.
Vos questions sont les bienvenue!!
A votre disposition
Partager