Recherche date pour filtrer

Bonsoir Cow18,

Merci également à toi pour le travail. Malheureusement cela ne fonctionne pas.

Cela devrait uniquement concerner le textbox1. Mais dans ton code je vois qu’il y a le textbox1 et textbox2.

Donc je ne comprends pas !

Pour moi la restitution en dessous de la partie jaune est correct
Si je comprends bien tu la souhaites dans celle-ci et non en dessous
Quel est ton objectif recherché pour cibler ce type d’emplacement qui je comprends bien est celui d’un tableau que tu as intégré dans cet onglet
Effectivement sa présence nécessite pour déterminer la bonne ligne à utiliser quelques instructions supplémentaires que je n’ai pas mises n’étant pas informé de sa présence
Soit tu te dispenses de celui-ci donc à supprimer soit je réalise ce complément
A toi de dire
Pour les couleurs ce sont les MFC qui les engendrent pas le code du bouton du formulaire
A toi de les maintenir modifier ou les supprimer

Re,

OK, si tu me dis que je n’ai pas besoin du tableau, alors je te suis. Il faut juste que lors du transfert des données je n’ai pas les couleurs de la mfc.

Tu as bien remarqué dans ma copie d’écran que je t’ai transmise seules les valeurs sont recopiés aucune couleur mise en forme
Il doit en être de même pour toi
Supprime l’onglet "RESULTATS A " et recrées le au même nom avec juste le nom de chaque colonne « Libellé » colonne « E » et « AR55 » colonne « F »
Attention pour ce que tu as réalisé ici :
« j’ai essayé en enlevant le +1 a la fin de cette ligne du code »
Il faut restaurer la ligne de code concernée en lui remettant le +1

Verifies aussi si d’autres traitements utilisent cet onglet en l’état avec la présence du tableau ils pourraient être mis à mal

Testes et dis moi

Bonjour FFO,

oui cela je l’ai vu.

Je vais expliqué:

Ouvre le fichier ci-joint et entre par exemple la date du 14 dans le Textbox1 et filtre. Tu verras que le transfert se place une ligne en dessous du tableau et sans couleur.

Mais si je modifie la ligne de ton code et que j’enlève le + 1 comme dans la ligne ci dessous, alors il place le transfert bien dans le tableau.

lignerecopie = Sheets("RESULTATS A").Range("E" & Rows.Count).End(xlUp).Row

Ensuite, l’erreur de la couleur de la MFC vient peut-être du code ci dessous utilisé dans le commandbutton7 qui sert a filtrer par période.

Private Sub CommandButton7_Click()
Dim Lo As ListObject
Set Lo = Sheets("RESULTATS A").ListObjects(1)
If Not Lo.DataBodyRange Is Nothing Then Lo.DataBodyRange.Delete xlUp 'RAZ
If Not IsDate(Textbox10) Or Not IsDate(Textbox20) Then Exit Sub
With [Tableau1].ListObject.Range
    .AutoFilter 1, ">=" & CLng(CDate(Textbox10)), xlAnd, "<=" & CLng(CDate(Textbox20))
    .SpecialCells(xlCellTypeVisible).Copy Lo.Range(1)
    .AutoFilter 1 'ôte le filtre
End With
Application.GoTo Lo.Range(1) 'facultatif
Unload Me
  Application.Visible = True
  Sheets("RESULTATS A").Activate
End Sub

Merci pour la vérification

Rubis-Filtrer (2).xlsm (73,6 Ko)

Bonjour
La ligne de code qui détermine la variable « lignerecopie » a pour but de déterminer la première cellule non vide de la colonne « E » ou celle dernière d’un tableau et de rajouter un +1 pour cibler la suivante libre
Or dans ton onglet il y a un tableau donc dans cet esprit de cibler la cellule après celle sur fond jaune qui appartient à celui-ci
C’est donc l’objet du +1 afin d’éviter d’utiliser une cellule occupée
Si tu enlèves celui-ci tu prends le risque d’intégrer le résultat du traitement dans des cellules déjà occupées : dernières cellules d’un tableau ou avec des données
Testes en remplissant les cellules en jaune du tableau et realises ensuite un filtre tu verras que ces cellules des données que tu auras préalablement intégrées auront au final celles du résultat du filtre ce qui n’est pas l’objet de celui attendu
Tu constates que le filtre fonctionne comme souhaité car les cellules en jaune n’ont pas de donnée
Fais deux essais successifs sans nettoyer le résultat obtenu avec le +1 les 2 seront bien présent sans le +1 il n’y en aura qu’un
Idem si avec un seul essai plusieurs résultats doivent être listés il y en aura qu’un seul le dernier
Désordre désordre
Pour moi le +1 dois être maintenu reste à trouver la bonne solution pour gérer la présence du tableau :

Le supprimer
Adapter le code par sa présence

Ce choix doit prendre en compte le fonctionnement des autres traitement à ne pas mettre en péril en fonction

A toi de me dire

Rubis57, je suis convaicu que vous n’avez pas bien lu ma macro et vous ne l’avez pas testé, il n’y a nulle part un autre textbox que textbox1

Bonjour Cow18

si j’utilise votre code pour le commandbutton8 il ne se passe rien !

Re,

alors on ne se comprends pas bien je crois.

Lors du transfert des données, il ne doit que transférer les données et non les couleurs de la MFC.

Si je filtre par période (voir image)
par periode

cela me transfert les données et les couleurs de la MFC du tableau de l’onglet « CHIFFRES A »,
vue du transfert dans le tableau

alors qu’il devrait transférer uniquement les données et non les couleurs.

Si je filtre par jour simple,
par jour

il me transfère les données en dessous du tableau de l’onglet « RESULTATS A »
vue du transfert qui est hors du tableau

J’espère avoir bien expliqué.

Attention je ne suis intervenu que sur le premier bouton « FILTRER » pas sur le deuxième
Effectivement comme je te l’ai expliqué la présence d’un tableau dont je n’avais pas connaissance donne le résultat après celui-ci sans aucune couleur
Je te transmets dès que possible une correction de celui-ci pour en tenir compte afin d’inclure le résultat dans celui-ci
Pour les couleurs si il n’y a pas de MFC pour les générer mon code ne transmet que les valeurs rien d’autre
Je répète cela ne concerne que le traitement du premier bouton « FILTRER » nullement le second

Rubis-Filtrer (2).xlsm (69,5 Ko)

juste pour m’amuser, on a cette valeur boolean « bEcraser » pour oubien supprimer le contenu du tableau et coller le contenu du filtre oubien coller le contenu du filtre en dessous le contenu existant.
Rubis-Filtrer (2).xlsm (71,5 Ko)

On se comprends vraiment mal !

Si j’utilise ton fichier et je filtre par exemple la date du 14 il ne me donne pas uniquement le 14, mais plusieurs jours

Rubis-Filtrer (2).xlsm (73,6 Ko)

Toujours rien Cow1_

si je filtre par exemple la date du 14 dans le Textbox1 il me donne l’erreur suivante

A

Ci-joint ma proposition adaptée à la présence d’un tableau onglet de recopie "RESULTATS A "
Testes le premier bouton « FILTRER »
Puis fais de même avec le deuxième bouton j’ai corrigé son code pour n’avoir en résultat recopié que les données aucune mise en forme
Il reste malgré tout sur certaines cellules un fond gris lié pour moi à l’existence d’un tableau
A voir si cela te convient malgré tout
Fais moi un retour
Rubis-Filtrer.xlsm (75,7 Ko)

1 « J'aime »

votre excel, c’est quelle version ?
Rubis-Filtrer (2).xlsm (71,7 Ko)

1 « J'aime »

je travaille sur Excel version 2016

Cela me convient.

Très beau boulot FFO, comme toujours. :wink:

Merci beaucoup pour ce travail et ta patience.

A +
Rubis57

Cow18, je viens de tester la version de FFO et cela me convient très bien. Merci à toi pour ton investissement.

A+
Rubis57