IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Rechercher une valeur dans une liste qui apparait plusieurs fois, pour modifier une case de la ligne trouvé. [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2013
    Messages : 24
    Points : 8
    Points
    8
    Par défaut Rechercher une valeur dans une liste qui apparait plusieurs fois, pour modifier une case de la ligne trouvé.
    Bonjour,

    J’ai pour objectif de réaliser un outil informatique pour améliorer la gestion du parc matériel de l'entreprise dans laquelle je fais mes études en alternance.
    J'ai commencé à créer cet outil, avec EXCEL 2007 et VBA.

    Je me suis beaucoup aidé du site et des différentes discussions que l'on peut trouver, mais je n'ai pas trouvé de solution à mon problème.

    J'ai 3 feuilles Excel :
    La première est une liste ou apparait le nom du matériel, le code d’identification, le type d’engins… etc
    La seconde, est une liste des chantiers avec le nom des responsables du chantier
    La troisième est une liste ou apparait les engins qui sont sortie, avec le code d’identification, la date de sortie du matériel, la date de retour du matériel… (Voir Imp – 1 ci-joints).

    De plus, j’ai créé une boîte de dialogue, ou l’on peut y écrire le code d’identification du matériel et la date du jour (manuellement).
    Le but, en validant cette boite de dialogue, est que la macro trouve la dernière ligne de la colonne (B) ou est écrit le code d'identification tapé dans la TextBox1, pour y écrire la date de retour du matériel, même ligne et colonne H.

    J’ai essayé plusieurs "technique" mais à chaque fois, je trouve le premier ou le second code d'identification de la liste.

    Voici, le code dont je me sers.
    Est-ce le bon code dont je me sers ?
    Si non, quels serait la meilleur méthode pour résoudre mon problème ?
    En espérant être assez clair et précis.
    Vous remerciant d'avance pour votre aide.
    Cordialement


    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
    47
    48
    Private Sub CommandButton2_Click()
     
    If Me.TextBox1.Value = "" Then
        MsgBox "Veuillez indiquer un numéro d'identification, merci."
        Me.TextBox1.SetFocus
    Exit Sub
    End If
     
    If Me.TextBox2.Value = "" Then
        MsgBox "Veuillez indiquer une date d'entrée/retour du matériel, merci."
        Me.TextBox2.SetFocus
    Exit Sub
    End If
     
    'Recherche de la derniere ligne ou est écrit le code d'identification  rechercher (TextBox1)
    'pour y inscrire la date de retour du matériel.
     
    Dim premiereCellule As Range
    Dim precedente As Range
    Dim derniere As Range
    Dim L As Long ' L numéro de la ligne ou est ecrit le dernier code d'identification
    Dim DerLign As Long ' DerLign est la derniere ligne ou il y a un code d'identification
     
    DerLign = Range("SituationMateriel!B1048576").End(xlUp).Row ' Pour éviter de rechercher sur les 1048576 Cellules de la colonne
     
    With Worksheets("SituationMateriel").Range("B1:B" & DerLign)
        Set C = .Find(TextBox1) '.Values 'Worksheets("SituationMateriel").Range("B1:B" & DerLign)
        If Not C Is Nothing Then
            Set premiereCellule = C
            Do
                Set precedente = C
                Set C = .FindNext(C)
                'Set derniere = C      ' quand il aura fait la boucle derniere = premiereCellule (je pense)
        Loop While C Is premiereCellule 'DerLign 'Is premiereCellule
     
        L = precedente.Row 'precedente, car c sera = a la valeur de la boucle une fois boucler
        Worksheets("SituationMateriel").Range("H" & L).Value = TextBox2 'écrire la date sur la bonne ligne
     
        End If
    End With
     
    'Vide la BDD
    Unload Me
     
    Entree_Materiel.Hide
    Choix_Action.Show
     
    End Sub
    Images attachées Images attachées   

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2013
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : mai 2013
    Messages : 3 615
    Points : 5 908
    Points
    5 908
    Par défaut
    Bonjour,

    Dans ton cas, je pense que le mieux est de boucler à partir de la fin
    Comme tu connais ta dernière ligne, tu boucles

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    DerLign = Range("SituationMateriel!B1048576").End(xlUp).Row
    For I = DerLigne to 2 Step - 1
       If....valeur trouvée Then
          ....code
       End If
    Next
    MPi²

  3. #3
    Inactif  
    Homme Profil pro
    Inscrit en
    septembre 2012
    Messages
    1 733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : septembre 2012
    Messages : 1 733
    Points : 2 555
    Points
    2 555
    Par défaut
    Pourquoi ne pas partir tout simplement d'en bas
    Derniereligne = range("A" & rows.count).end(xlup).row

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    For i = derniereligne to 2 step -1
    if....

  4. #4
    Invité
    Invité(e)
    Par défaut Bonjour,
    Si j'ai bien compris, tu cherche dans la colonne [B] la valeur de ton TextBox1.

    hors cette valeur peut exister à plusieurs endroits?
    disons [B5],[B100] et [B500] tu veux modifier la ligne 500 ou ajouter à la fin de la page si la valeur n'a pas été trouvé, c'est bien cela?

    de plus, dans le cas de la recherche, la dernière ligne est inutile.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    With Worksheets("SituationMateriel").Range("B:B")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DerLign = Worksheets("SituationMateriel").UsedRange.Rows.Count

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2013
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Merci pour votre aide,

    Je ne comprend pas trop, à quoi correspond :
    To 2 Step -1

    Vous indiquez qu'il faut mettre un code, c'est le code pour trouver la première valeur ? la fonction Find permet de rechercher un valeur en partant de la fin de la liste ?

    Oui, rdurupt, Le but est de venir mettre une date (colonne H), dans la dernière ligne ou apparait le code d'identification de la colonne B.
    Car les autres lignes ou apparaissent le même code d’identification auront déjà une date mis dans la colonne H.

    Cordialement

  6. #6
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2013
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : mai 2013
    Messages : 3 615
    Points : 5 908
    Points
    5 908
    Par défaut
    Remplace la partie du Find avec ceci.
    Ça devrait faire ce que tu veux...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    DerLign = Sheets("SituationMateriel").Cells(Rows.Count, "B").End(xlUp).Row
    For I = DerLigne to 2 Step - 1  'Boucle de la fin en remontant de 1 (step -1)
       If Range("B" & I) = Textbox1 Then
          Range("H" & i) = Textbox2
       End If
    Next
    MPi²

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2013
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    J'ai testé votre code, mais je ne comprends pas à quoi correspond le To 2 step -1.

    Pour être plus précis, le i correspond à la dernière ligne remplis de la colonne ?
    Pour ma part, le code que je recherche n'est pas forcément dans la dernière ligne, il peut se trouver n'importe ou dans la colonne jusqu’à la dernière ligne remplis.
    Il peut y avoir 500 ligne remplis, et le code que je recherche peut être sur la ligne 10, 250, 350 et 400. Et il m'importe de trouver la ligne 400 dans ma recherche.

    Cordialement

  8. #8
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2013
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : mai 2013
    Messages : 3 615
    Points : 5 908
    Points
    5 908
    Par défaut
    Comme ton fichier semble être classé de le plus ancienne donnée en haut à la plus récente en bas, il faut partir du bas et remonter vers le haut

    Dans le code fourni, I est la ligne en cours (de la boucle...)

    For I = DerLigne to 2 Step -1
    Pour I = la dernière ligne jusqu'à la ligne 2 en remontant de 1

    Est-ce que c'est plus clair ?
    MPi²

  9. #9
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2013
    Messages : 9 468
    Points : 18 768
    Points
    18 768
    Par défaut
    Bonjour,

    il n'y a besoin que d'une seule ligne de code avec la méthode Find - bien plus rapide qu'une boucle sur des cellules -
    en remontant directement à la dernière cellule correspondant au TextBox
    grâce à l'argument SearchDirection à xlPrevious (correction de la ligne n°27 source) :

    Set C = .Find(TextBox1.Value, , , , , xlPrevious)


    __________________________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  10. #10
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2013
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Pour Parmi :
    Si j'ai bien compris, le code indique qu'il faut faire la boucle en partant de la fin pour remonter, après il faut mettre en place le code avec la fonction find, pour arriver au résultat que je veux ?

    Marc-L : j'ai essayé votre code, mais cela m'indique seulement la premiere ligne de la colonne ou apparait le code. peut etre ai-je mal remplis, faut-il mettre des valeur avec XlPrevious ?

    Est-il possible de combiner vos deux solutions ?
    Je suis novice, il me faut du temps pour comprendre certains points, d'ou mes questions.
    En vous remerciant.

  11. #11
    Invité
    Invité(e)
    Par défaut
    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
    47
    48
    49
    Public SerchXls(Myrange As Range, MyCellule As Range, strRecherche, EntierCell As Boolean) As Long '
    On Error Resume Next
    SerchXls = 0
       SerchXls = Myrange.Cells.Find(What:=strRecherche, After:=MyCellule, LookIn:=xlFormulas, LookAt _
            :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
            False, SearchFormat:=EntierCell).Row
      If SerchXls <= MyCellule.Row Then SerchXls = 0
    End Function
     
    Private Sub CommandButton2_Click()
     
    If Me.TextBox1.Text = "" Then
        MsgBox "Veuillez indiquer un numéro d'identification, merci."
        Me.TextBox1.SetFocus
    Exit Sub
    End If
     
    If Me.TextBox2.Text = "" Then
        MsgBox "Veuillez indiquer une date d'entrée/retour du matériel, merci."
        Me.TextBox2.SetFocus
    Exit Sub
    End If
     
    'Recherche de la derniere ligne ou est écrit le code d'identification  rechercher (TextBox1)
    'pour y inscrire la date de retour du matériel.
     
    Dim L As Long
    Dim Start As Long
    Start = 1
    Do Until Start = 0
        L = Start
        Start = SerchXls(Worksheets("SituationMateriel").Columns("B:B"), Worksheets("SituationMateriel").Range("B" & Start), Me.TextBox1.Text, True)
    Loop
    If Start = 1 Then
        If MsgBox(Me.TextBox1.Text & "  pas trouvé" & vbCrLf & "volez vous l'ajouter a la fin", vbYesNo + vbQuestion) = vbYes Then
             L = Worksheets("SituationMateriel").UsedRange.Rows.Count + 1
             Worksheets("SituationMateriel").Range("B" & L).Value = TextBox1.Text 
            Worksheets("SituationMateriel").Range("H" & L).Value = TextBox2.Text 'écrire la date sur la bonne ligne
        End If
    Else
     Worksheets("SituationMateriel").Range("H" & L).Value = TextBox2.Text 'écrire la date sur la bonne ligne
    End If
    'Vide la BDD
    Unload Me
     
    Entree_Materiel.Hide
    Choix_Action.Show
     
    End Sub
    Dernière modification par Invité ; 12/09/2013 à 23h14.

  12. #12
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2013
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : mai 2013
    Messages : 3 615
    Points : 5 908
    Points
    5 908
    Par défaut
    Pour la méthode que je suggérais, tu n'avais plus à utiliser de Find.
    La boucle part effectivement du bas vers le haut et quand tu as trouvé la valeur que tu recherches, tu inscris l'autre valeur que tu veux mettre à jour.
    J'ai oublié de mettre Exit For lorsque la valeur est trouvée pour éviter de continuer la boucle et d'écraser les autres données...

    Marc-L t'en suggère une autre en utilisant Find avec xlPrevious et en laissant tomber la boucle.
    Ce sont 2 possibilités distinctes et ça ne sert à rien, dans ton cas, d'essayer de les entremêler.

    Petite note en passant:
    J'ai déjà fait des tests de rapidité entre des boucles et des Find et il arrive que la boucle soit plus rapide...
    MPi²

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2013
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Parmi, si j'ai bien compris, ton code permets de venir vérifier si sur la derniere ligne de la colonne B il y a la TextBox1, et si c'est le cas alors elle met la valeur de la TextBox2 dans la colonne H, et si ce n'est pas le cas il se passe rien ?

    Concernant ma recherche, je peux être amener à chercher le code d'identification (colonne B) sur plusieurs ligne en remontant, exemple le code "101011".
    Sur l'un des Imprime écran que j'ai mis dans mon premier post.

    J'ai peut être mal essayer votre code, voici comment je l'ai insérer dans mes lignes de code :
    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
    Private Sub CommandButton2_Click()
     
    If Me.TextBox1.Value = "" Then
        MsgBox "Veuillez indiquer un numéro d'identification, merci."
        Me.TextBox1.SetFocus
    Exit Sub
    End If
     
    If Me.TextBox2.Value = "" Then
        MsgBox "Veuillez indiquer une date d'entrée/retour du matériel, merci."
        Me.TextBox2.SetFocus
    Exit Sub
    End If
     
    'Recherche de la derniere ligne ou est écrit le code d'identification  rechercher (TextBox1)
    'pour y inscrire la date de retour du matériel.
     
    Dim DerLign As Long ' DerLign est la derniere ligne ou il y a un code d'identification
     
    DerLign = Sheets("SituationMateriel").Cells(Rows.Count, "B").End(xlUp).Row
    For i = DerLigne To 2 Step -1   'Boucle de la fin en remontant de 1 (step -1)
       If Range("B" & i) = "TextBox1" Then
          Range("H" & i) = "TextBox2"
       End If
    Exit For
    Next
     
    'Vide la BDD
    Unload Me
     
    Entree_Materiel.Hide
    Choix_Action.Show
     
    End Sub
    Concernant votre code Rdurupt, je regarderais cela demain, étant novice, j'ai besoin d'un maximum d'attention pour éplucher le code et le comprendre, ce que je n'ai pas forcément le soir.^^

    En vous remerciant du temps passé a résoudre mon problème.

  14. #14
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2013
    Messages : 9 468
    Points : 18 768
    Points
    18 768
    Par défaut
    Citation Envoyé par Georges50 Voir le message
    Marc-L : j'ai essayé votre code, mais cela m'indique seulement la premiere ligne de la colonne ou apparait le code. peut etre ai-je mal remplis, faut t'il mettre des valeur avec XlPrevious ?
    De mon côté cette ligne se positionne sur la dernière cellule saisie correspondante de la colonne !

    Si après il faut continuer à remonter, il faut utiliser la méthode .FindPrevious …

    Citation Envoyé par parmi Voir le message
    Ce sont 2 possibilités distinctes et ça ne sert à rien, dans ton cas, d'essayer de les entremêler.

    Citation Envoyé par parmi Voir le message
    J'ai déjà fait des tests de rapidité entre des boucles et des Find et il arrive que la boucle soit plus rapide...
    D'accord en bouclant sur une variable tableau mais dans divers tests avec de gros fichiers
    en bouclant directement dans une colonne de milliers de cellules, Find s'est avéré bien plus rapide …
    Je ne suis p't'être pas tombé sur le bon fichier !


    __________________________________________________________________________________________
    La connaissance, c'est comme la confiture, moins on en a plus on l'étale !
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  15. #15
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2013
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    J'ai essayé votre code RDurupt, mais il m'envoie une erreur par rapport au "Myrange as Range" sur la première ligne de code.

    Concernant votre code Parmi :
    Ce que j'ai compris, c'est qu'il ne fonctionne que si le code d'identification écrit dans la TextBox1 correspond au code d’identification de la dernière ligne du tableau. Or pour ma part, il est nécessaire que je remonte plus haut dans la liste. je peux remonter de quelques lignes à plusieurs dizaine de ligne.
    Par exemple, la dernière ligne écrit peut être la 1520, et le code que je recherche peut être à la ligne 532.

    Voulez vous voir le fichier complet ? cela permet peut être de mieux comprendre, il est vrai qu'il est difficile d'expliquer tout.

  16. #16
    Membre habitué
    Profil pro
    Inscrit en
    décembre 2007
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : décembre 2007
    Messages : 154
    Points : 147
    Points
    147
    Par défaut
    Bonjour à tous,
    oui pour moi un fichier exemple serait le bien venu

  17. #17
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2013
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    Ci-joint le fichier Excel avec le premier code que j'avais fait.

    Merci
    Fichiers attachés Fichiers attachés

  18. #18
    Invité
    Invité(e)
    Par défaut Bonjour,
    J'ai essayé votre code RDurupt, mais il m'envoie une erreur par rapport au "Myrange as Range" sur la première ligne de code.
    je suis dépité, c'est un fonction que j'ai testé et testé.

    à vrai dire je l'utilise depuis un quinzaine d'années sans aucun problème.
    que dit le message d'erreur?

  19. #19
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : avril 2013
    Messages : 9 468
    Points : 18 768
    Points
    18 768
    Par défaut

    C'est comme Find en remontant ne m'ayant posé aucun souci depuis 10 ans …


    __________________________________________________________________________________________
    L'expérience, c'est une connerie par jour, mais jamais la même …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  20. #20
    Futur Membre du Club
    Profil pro
    Inscrit en
    février 2013
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : février 2013
    Messages : 24
    Points : 8
    Points
    8
    Par défaut
    Il m'indique une erreur de compilation. Voir imprime écran joint.
    Images attachées Images attachées  

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/05/2011, 22h42
  2. Réponses: 2
    Dernier message: 09/02/2011, 15h39
  3. Réponses: 7
    Dernier message: 27/05/2008, 14h59
  4. Réponses: 4
    Dernier message: 04/11/2007, 14h46
  5. [VBA-E]Methode pour trouver une valeur qui apparait plusieur fois
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 23/05/2006, 14h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo