Bonjour à tous,
Existe t-il une manière simple pour pouvoir faire une incrémentation par rapport au contenu d'une cellule?
Je m'explique:
-Dans la colonne A j'ai des données de type string, dans chaque cellule de cette colonne j'ai une chaine de caractères.
-Ma colonne B est vide et je souhaite que l'incrémentation se fasse dans cette colonne.
-Je peut avoir plusieurs fois la même chaine de caractères mais dans des cellules de A différentes et la se pose mon problème.
-Au cas où une chaine existante est encore trouvée dans ma colonne A, je dois incrementer en colonne B en face de la chaine et supprimé la ou les ligne(s) qui ne sert/servent plus.
J'ai déjà quelques pistes mais pas très convainquantes jusqu'à présent, je vous donne le code que j'ai lutter à écrire ^^.Jusquèà présent j'ai un début de code d'incrémentation enfin je pense :
Voila, mon code est correct enfin je pense, si quelques améliorations pouvais être faites. Je vous remercie d'avance pour votre aide à tous et toutes.
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 Sub recherche() Dim i As Long Dim j As Long Dim k As Long Dim Logiciel As String Dim FinTablo As Long Dim result As Boolean FinTablo = 0 For j = 7 To 256 'Colonnes For i = 1 To 65536 'Lignes If i = 116 And j = 25 Then If Feuil1.Cells(i, j).Value = "#N/A" Then MsgBox "toto" End If End If Logiciel = CStr(Feuil1.Cells(i, j).Value) result = Logiciel Like "*Mise à jour*" 'exclusions toutes les Mises à jour If result = False Then For k = 1 To FinTablo + 1 If Logiciel <> "" Then If Logiciel <> "#N/A" Then If Logiciel = Feuil2.Cells(k, 1).Value Then Feuil2.Cells(k, 2).Value = Feuil2.Cells(k, 2).Value + 1 Exit For End If End If Else Exit For End If Next k End If If k - 1 = FinTablo + 1 Then Feuil2.Cells(k - 1, 1) = Feuil1.Cells(i, j).Value Feuil2.Cells(k - 1, 2) = "1" FinTablo = FinTablo + 1 End If Next i Next j MsgBox ("Recherche terminée") End Sub
Partager