Par macro, faire le tri dans un tableau

Résolu
Philou73CH -  
PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'aimerai pour entrer une date de naissance dans une cellule et qu'à l'aide d'une macro, je puisse avoir toutes les personnes correspondantes à cette demande.
Là actuellement, c'est le pire de la journée, ca me copie tout mon tableau d'essai.

Vous trouverez un fichier exemple.

http://www.cjoint.com/?0JfrbWOJziY

Merci d'avance de votre aide.
Ps : je suis tellement un pied que je n'arrive même pas à vous mettre le lien en hypertexte.
Je vous demande de bien vouloir m'en excuser aussi .... :-(

5 réponses

  1. via55 Messages postés 14391 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Si j'ai bien compris ta demande voilà la macro completement revue pour selectionner selon la date

    https://www.cjoint.com/?0JfsUc5DQpL

    Cdlmnt
    0
    1. Philou73CH
       
      Bonjour via55,

      Merci pour cette solution. Et le temps que vous avez passez dessus.
      Je vais l'appliquer sur le programme principale.
      Merci à vous. Bon week-end
      0
  2. PHILOU10120 Messages postés 6463 Date d'inscription   Statut Contributeur Dernière intervention   835
     
    Bonjour

    Votre fichier modifié et simplifié

    https://www.cjoint.com/?3Jfthr20axF

    Je vois que Vaucluse vous a déjà répondu, ne voulant pas travailler pour rien je vous mets ma solution quand même

    0
    1. Philou73CH
       
      Bonjour Philou10120
      La question est résolu parce que ce que vous me proposez me convient.
      Par contre, je n'arrive pas à l'adapter à mon programme.
      Il bloque au niveau du premier filtre.
      Pouvez vous m'aider ?
      Voici à quoi cela ressemble.

      Sub PrimairePropositionIdentitée()
      'accès et enlever protection page patient pour copier dans page travail
      Sheets("Patients").Select
      ActiveSheet.Unprotect
      Range("A1:K1500").Select
      Selection.Copy
      Sheets("Tableau").Select
      Range("A4").Select
      ActiveSheet.Paste
      'protéger page patient
      Sheets("Patients").Select
      Range("A1").Select
      ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
      'nettoyer page proposition
      Sheets("Identitépotentielle").Select
      Range("Proposition").Select
      Selection.ClearContents
      Sheets("Tableau").Select
      Range("Base_tableau").Select
      'Filtre
      Range("Base_tableau").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _
      Range("Criteres"), CopyToRange:=Range("extraction"), Unique:=False
      Application.Goto Reference:="extraction"
      Selection.Copy
      Sheets("Identitépotentielle").Select
      Range("B1").Select
      Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
      :=False, Transpose:=False
      Range("B6").Select

      Dans l'attente de votre réponse, je vous adresse mes meilleures salutations et mes remerciement
      0
  3. foo
     
    Bonjour

    tien tu peux aussi faire comme ca

    Sub TestCopyDate()
    Vdate = Feuil1.Range("B1").Value2
    Feuil4.Rows("2:" & Rows.Count).Delete
    Nlig = 2
    With Feuil3
    For L = 2 To .Range("A" & Rows.Count).End(xlUp).Row
    Tdate = .Range("A" & L).Value2
    If Vdate = Tdate Then
    .Rows(L).Copy
    Feuil4.Range("A" & Nlig).PasteSpecial xlPasteValues
    Nlig = Nlig + 1
    End If
    Next
    End With
    End Sub

    A+
    Mauurice
    0
  4. Philou73CH
     
    Bonjour à vous 3.

    Je vous remercie de votre aide.
    Elle m'a été précieuse et je peux ainsi continuer mon projet.
    Et du coup, vous aurez encore à éclairer ma lanterne.

    Signé : un petit débutant qui est encore mouillé derrière les oreilles
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question