j'ai un tableau dont je dois récuperer une ligne par identifiant et une seule, l'identifiant est contenu dans la colonne identifiant.
cet identifiant revient plusieurs fois, il marque l'appartenance à une famille d'écriture.
Exemple :
Identifiant - libellé - compte - montant
E1
E1
E1
E2
E3
E3
E3
J'ai essayé avec une double boucle :
Code:
For i = 1 To 300
ID = "E" & i
For Each cell In Range("A1:A105")
If cell.Value = ID Then
Msgbox(Cells(cell.Row, (cell.Column) + 3).Value)
Next cell
Mais je ne vois pas comment ne garder qu'une ligne (peu importe laquelle, simplement une par identifiant) sans ajouter une colonne, dans cet exemple toutes les lignes sont prises en compte.
Re : VBA - Récuperer une cell adress en fonction d'un critère afin d'exploiter une l
Bonjour,
essaye ceci :
Code:
Option Explicit
Sub test()
Dim i As Long
For i = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1
If Cells(i, 1) = Cells(i + 1, 1) Then Rows(i).Delete
Next i
End Sub
Re : VBA - Récuperer une cell adress en fonction d'un critère afin d'exploiter une l
Bonjour Pierrot93,
Merci pour cette proposition ingénieuse comme toujours.
Mais cette version me contraint à supprimer les lignes en les considérant comme doublons hors ce n'est pas le cas.
Toutes les lignes sont utilisées régulièrement dans le traitement, il s'agit d'écritures comptables.
Re : VBA - Récuperer une cell adress en fonction d'un critère afin d'exploiter une l
Re,
bah... tu disais...
Mais je ne vois pas comment ne garder qu'une ligne (peu importe laquelle, simplement une par identifiant) sans ajouter une colonne, dans cet exemple toutes les lignes sont prises en compte.
Re : VBA - Récuperer une cell adress en fonction d'un critère afin d'exploiter une l
Désolé,
Je n'ai pas été clair, tu as raison
mon tableau sert à générer des écritures, chaque ligne est inscrite dans un fichier *.txt
Mais je dois également recuperer les données d'une ligne par famille d'ientifiants pour compléter mon fichier.
Au delà du code, je ne vois pas de façon simple sans avoir à créer de nouvelles colonnes...