Extraction données entre deux dates d'une feuille à l'autre

Bonjour à tous,

Je suis actuellement en train de travailler sur un tableau pour mon chef, je suis débutante en vba donc je vais vous expliquer au mieux ce que je cherche à faire.

J'ai 3 feuilles dans mon tableau et sur la feuil3 je cherche à exporter toutes les données comprises entre 2 dates du tableau de la feuil1 sachant que les dates voulus sont dans la cellule G3 et B2 de la feuil3.

feuil1 : Liste complète_FVI (tableau2)

feuil3 : Fiche récente (tableau22)

Je recherche une solution facile d'utilisation.

Je pensais insérer un bouton qui nous permet d'afficher les données lorsque l'on clic dessus.

Si quelqu'un avait une idée car j'ai chercher sur multiple forum mais je ne trouve pas

Vous trouverez ci-joint mon tableau.

70classeur1.xlsm (39.46 Ko)

Je suis sous excel 2016.

bonjour,

une proposition

197export-ligne.xlsm (41.74 Ko)

Merci,

C'est top comme ça. Par contre y-a-t'il a une solution pour que l'export s'actualise si je change la date en G1 ?

tu veux que que le "tableau22" s'efface pour faire place à un nouveau

Oui si je change la date en G1 que celui que l'export que j'ai fait soit mis à jour avec la nouvelle date.

Par exemple nous somme le 28/10/2019 (B2) et je souhaite lister les fiches depuis le 14/10/2019 (G1) j'ai donc l'export qui se fait dans le tableau22, mais maintenant si je souhaite pour une raison quelconque modifier la date au 16/10/2019 (G1) et 29/10/2019 (B2), il faudrait que l'export se mette à jour avec les nouvelles dates.

L'exemple de ma macro (rangecopy) de la feuil2 : j'ai créée une macro qui recopie mon tableau de la feuil1 sur la feuil2 et si je fait des modifications dans le tableau de la feuil1 et que je clique sur le bouton "Liste complète_FVI" de la feuil2 la liste s'actualise avec les modifications (sauf si je supprime la dernière ligne (ce que je n'ai pas encore compris)).

Je ne sais pas si je suis assez claire ?

Bonjour à tous

Autre solution dans le module de feuil3

Il s'agit de l'application d'un filtre avancé

Pas de bouton, la seule évolution des zones de dates actualise la feuille.

Private Sub Worksheet_Activate()
    filtrer
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Union(Range("G1"), Range("B2"))) Is Nothing Then Exit Sub
    filtrer
End Sub

Sub filtrer()
    Sheets("Liste complète_FVI").Range("Tableau2[#All]").AdvancedFilter Action:= _
        xlFilterCopy, CriteriaRange:=Range("A9:B10"), CopyToRange:=Range( _
        "Tableau22[#Headers]"), Unique:=False
End Sub
128classeur1.xlsm (40.50 Ko)

Merci Steelson

Cette solution me convient aussi, elle est très bien.

Merci beaucoup.

Autre solution dans le module de feuil3

Il s'agit de l'application d'un filtre avancé

Pas de bouton, la seule évolution des zones de dates actualise la feuille.

Cela fonctionne très bien mais pouvez-vous m'expliquer comment vous avez fait afin que je puisse le refaire en cas de besoin ?

Merci beaucoup.

Voici :

  • le module se trouve dans la feuille elle-même.
  • explications ...

Quand tu sélectionnes (ou actives) la feuille, cette macro se déroule et fait appel automatiquement à la macro filtrer

Private Sub Worksheet_Activate()
    filtrer
End Sub

Quand tu changes une valeur, si celle-ci n'est ni G1, ni B2, il ne passe rien, sinon cette macro se déroule et fait appel automatiquement à la macro filtrer

Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Union(Range("G1"), Range("B2"))) Is Nothing Then Exit Sub
    filtrer
End Sub

Et voici la macro filtrer :

Sub filtrer()
    Sheets("Liste complète_FVI").Range("Tableau2[#All]").AdvancedFilter Action:= _
        xlFilterCopy, CriteriaRange:=Range("A9:B10"), CopyToRange:=Range( _
        "Tableau22[#Headers]"), Unique:=False
End Sub

Elle prend les données du Tableau2, onglet Liste complète_FVI

et selon les critères en A9:B10, elle exécute un filtrage et copie les valeurs selon les en-têtes du Tableau22 ici.

Ce type de macro est aisément obtenue par apprentissage d'un filtre avancé.

Voici :

  • le module se trouve dans la feuille elle-même.
  • explications ...

Merci !!

Rechercher des sujets similaires à "extraction donnees entre deux dates feuille"