Ventiler des données sur deux feuilles selon critères

Bonjour

J'ai une base de données dans l'onglet Base contient plus de 1000 Candidats qui sont soit " Admis" ou soit " Non admis" Avec la cause du refus.

Je souhaiterais affecter les Candidats Admis à un onglet ‘’ Admis ‘’et les Candidats Non Admis à un onglet " Non admis" plus une colonne pour justifier la cause du refus.


(Fichier en pièce jointe)

Merci d'avance pour vos réponses.

Bien cordialement,


Bonjour à tous,

avec un tcd :

Bonjour,

Essayez ce code à placer dans un module et ensuite à lier à votre bouton

Sub test()
Dim tablo()
Dim dlg As Integer, i As Integer, J As Integer
Dim feuille As String

Application.ScreenUpdating = False
dlg = Range("A" & Rows.Count).End(xlUp).Row

ReDim tablo(dlg - 2, 9)
For i = 0 To dlg - 2
    For J = 0 To 9
        tablo(i, J) = Cells(i + 2, J + 1)
    Next J
Next i

For i = 0 To UBound(tablo)
    feuille = tablo(i, 8)
    With Sheets(feuille)
        dlg = .Range("A" & .Rows.Count).End(xlUp).Row
        For J = 1 To 10
            .Cells(dlg + 1, J) = tablo(i, J - 1)
        Next J
    End With
Next i
Application.ScreenUpdating = False
End Sub

Si ok, enregistrez votre fichier au format XLSM pour accepter l'utilisation des macros

Si ok -->

Cordialement

Bonjour DjiDji59430, Dan

Bonjour le forum

Réponses rapides et précises. Parfait… Merci !

Encore une fois un très grand merci

amicalement

Re Bonjour Dan

il y a un petit problème qu'il faut ajouter une instruction au code pour ne pas répéter la liste

à chaque fois qu'on appuie sur le bouton, et pour la mettre à jour

Je vous remercie

Re

il y a un petit problème qu'il faut ajouter une instruction au code pour ne pas répéter la liste
à chaque fois qu'on appuie sur le bouton, et pour la mettre à jour

Lol !! j'aurai mis ma main au feu que vous alliez revenir avec cette question.

Au début du code, rajoutez les lignes ci-dessous juste entre les lignes dlg = Range("A".... et Redim tablo...

With Sheets("Admis")
    dlg = .Range("A" & Rows.Count).End(xlUp).Row
    If dlg > 1 Then .Range("A2:I" & dlg).ClearContents
End With

With Sheets("Non Admis")
    dlg = .Range("A" & Rows.Count).End(xlUp).Row
    If dlg > 1 Then .Range("A2:J" & dlg).ClearContents
End With

Cordialement

Bonjour à tous,

Bonjour Dan

Votre code vba ca marche tres bien, Je vous remercie pour votre aide.

Bien cordialement à tout le monde.

Rechercher des sujets similaires à "ventiler donnees deux feuilles criteres"