Résultats pour "filtre"

1'330 résultats pour cette recherche

Bonjour à tous,

Je viens vous voir car je fais face actuellement à un problème .

Pour contextualiser, je travaille actuellement sur un UserForm permettant la création de document. Sur l'UserForm se trouve une ComboBox (appelée "ComboBox1" dans mon exemple). Dans cette ComboBox, nous pouvons trouver le nom de Templates déjà pré-enregistrés.

Dans deux Tables étant sur la feuille "Database" (la "Table1" et la "Table2") se trouvent des informations liées aux Templates (voir screen où on peut voir les Datas gardé en mémoire).

Je souhaite que lorsqu'on sélectionne un Template dans la "ComboBox1", les informations se trouvant dans la "Table1" et la "Table2" se copient dans 2 autres Tables (voir screen2 pour voir la tête des deux autres Tables).

Mon programme marche en soit, mais je me suis rendu compte que si le filtre filtre toute la Table (1 ou 2) car on n'a pas rentré de données pour le Template sélectionné, il copiera alors toutes les valeurs de la Table (voir screen 3 où on a choisit la valeur de "Template2" dans la ComboBox "ComboBox1").

J'ai essaye de résoudre le problème en rajoutant des conditions, mais je n'ai pas réussi.

Je vous demande donc si vous saurez quelles modifications faire afin qu'il ne copie aucune valeur dans ce cas précis (voir screen 4 où on voit le résultat attendu dans le cas du screen 3)

En vous remerciant par avance,

Benoit.

PS : Voici le code

Private Sub ComboBox1()

    '----------------------------------------------------------------------
    'Je filtre la Table1 pour n'avoir que les lignes liees a mon document
    '----------------------------------------------------------------------

    Dim Filter As String
    Filter = ComboBox1.value
    ThisWorkbook.Sheets("Database").ListObjects("Table1").Range.AutoFilter Field:=1, Criteria1:=Filter

    '----------------------------------------------------------------------------------------------
    'Je copie les lignes de la Table1 et je les mets dans une autre Table dans une autre feuille
    '----------------------------------------------------------------------------------------------

    With ThisWorkbook
        .Worksheets("DataBase").Activate
        .Sheets("DataBase").ListObjects("Table1").ListColumns(1).DataBodyRange.Select
        Selection.Copy

        .Worksheets("Feuille1").Activate
        LastRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
        Cells(LastRow, 1).Select
        Selection.PasteSpecial xlPasteValues

        .Worksheets("DataBase").Activate
        .Sheets("DataBase").ListObjects("Table1").ListColumns(2).DataBodyRange.Select
        Selection.Copy

        .Worksheets("Feuille1").Activate
        Cells(LastRow, 2).Select
        Selection.PasteSpecial xlPasteValues

        .Worksheets("DataBase").Activate
        .Sheets("DataBase").ListObjects("Table1").ListColumns(3).DataBodyRange.Select
        Selection.Copy

        .Worksheets("Feuille1").Activate
        Cells(LastRow, 3).Select
        Selection.PasteSpecial xlPasteValues

        .Worksheets("DataBase").Activate
        .Sheets("DataBase").ListObjects("Table1").ListColumns(4).DataBodyRange.Select
        Selection.Copy

        .Worksheets("Feuille1").Activate
        Cells(LastRow, 4).Select
        Selection.PasteSpecial xlPasteValues

        Application.CutCopyMode = False

        '+++++++++++++++++++++++++++++++++

    With ThisWorkbook
         .Sheets("Database").ListObjects("Table2").Range.AutoFilter Field:=1, Criteria1:=Filter
        .Worksheets("DataBase").Activate
        .Sheets("DataBase").ListObjects("Table2").ListColumns(1).DataBodyRange.Select
        Selection.Copy

        .Worksheets("Feuille1").Activate
        LastRow = ActiveSheet.Cells(Rows.Count, 7).End(xlUp).Row
        Cells(LastRow, 1).Select
        Selection.PasteSpecial xlPasteValues

        .Worksheets("DataBase").Activate
        .Sheets("DataBase").ListObjects("Table2").ListColumns(2).DataBodyRange.Select
        Selection.Copy

        .Worksheets("Feuille1").Activate
        Cells(LastRow, 8).Select
        Selection.PasteSpecial xlPasteValues

        .Worksheets("DataBase").Activate
        .Sheets("DataBase").ListObjects("Table2").ListColumns(3).DataBodyRange.Select
        Selection.Copy

        .Worksheets("Feuille1").Activate
        Cells(LastRow, 9).Select
        Selection.PasteSpecial xlPasteValues

        .Worksheets("DataBase").Activate
        .Sheets("DataBase").ListObjects("Table2").ListColumns(4).DataBodyRange.Select
        Selection.Copy

        .Worksheets("Feuille1").Activate
        Cells(LastRow, 10).Select
        Selection.PasteSpecial xlPasteValues

        Application.CutCopyMode = False

End Sub

EDIT1 : Ah oui pardon, il y a une colonne en plus sur le screen 1 mais c'est une erreur de ma part, n'y faites pas attention

EDIT2 : Il manquait une partie du code... Désolé, j'ai corrigé

screen4 screen3 screen2 screen1

Bonjour,

Je dispose d'un tableau de plus de 400.000 lignes, sur 8 colonnes [A à H].

Je recherche un code me permettant de filtrer ce tableau selon deux valeurs "oui" ou "nom", situées dans les colonnes [F à H]

J'ai créé un formulaire avec des cases option "oui" ou "non" pour chaque colonne [F à H] soit 6 cases option.

Voici ci-dessous, mon code pour la case option de la colonne "G" avec valeur "non"

Private Sub OPT4_Click()

If OPT4 = True Then

ActiveSheet.ListObjects("Tableau1").Range.AutoFilter Field:=7, Criteria1:="non"

End If

End Sub

Le code marche bien, mais avec toutes les lignes du tableau. Mon problème advient lorsque j'exécute un premier tri. Par exemple, dans ma colonne "A", sont indiqués des n° de SIRET d'entreprises. Et bien, si je fais un premier filtre sur un SIRET en particulier, j'ai supposons 10 lignes qui apparaissent (ce nombre de lignes peut varier en fonction du nombre de service que contient l'entreprise) avec des "oui" et des "non" aléatoires dans les colonnes [F à G]. Si, je souhaite ensuite n'avoir que les "non" de ma colonne "G" (code ci-dessus), et bien ma macro récupère les "non" de tous le tableau, alors que je voudrais les "non" des 10 lignes trouvées... Evidemment, si je ne recherche aucun SIRET en particulier, ma macro ci-dessus doit fonctionner sur tout le tableau, et il en va de même pour mes autres cases option.

J'essaye de donner un maximum d'informations car pas évident. Mon tableau faisant une taille de 20 Mo, je ne peux pas apparemment le mettre en p.j. de mon message...N'hésitez pas à me demander plus d'infos si besoin.

Merci par avance !

Micka

Bonjour,

Je ne dois pas avoir les bons termes, mais je ne vois pas une autre manière de dire : je voudrais un filtre selon des critères variables obtenus à partir d'un premier filtre.

J'ai effectivement un fichier avec l'enregistrement par ligne de factures.

J'aimerais avoir une macro qui filtre tous les projets à solder, tout en gardant l’historique des factures (car, tel que mon fichier est créé, seule la dernière facture indique l'état de facturation du projet, mon premier filtre ne me permet pas d'avoir les factures antérieures pour les projets non soldés)

Ci-joint un extrait de mon fichier et une macro "bricolé à mon niveau", qui marche mais qui met un temps fou à s'exécuter sur le fichier original.

Merci pour votre aide.

Salut les gars .

Petit probleme dans mon documents.

J'ai un filtre par segment.

Il fonctionne très biens, mais les images sont un problèmes.

Les images ne sembles pas être filtrés par le filtres segments. !??

C'est un bug excel ou une erreur de mon côté ?

Voici le fichier.

Complètement a gauche ces écrit filtre.

Cliquer sur un onglet a gauche et le filtre , filtrera le tableau , cependant , les images embarque une par dessu l'autre. !!!

Ex: cliquer sur :

item
avatar
avatar
hubs-stats

J'aimerai que cette function basic cache aussi les images du document .

ces pas super important , mais esceque ces un bug ???

Merci pour votre aide.

Note(Attention mon document contient quelque Module VBA

Il sont inoffensive)

Ces un docu prototype pour le dev d'une APP video ludique

24finalpid.xlsm (312.44 Ko)

Bonjour, je vous présente ma base :

3 colonnes : Objet et Binaire1 et Binaire2 (peu importe), dans la colonne objet j'ai 8 "Truc" et 5 "Machin", dans les colonnes Binaire1 et Binaire2, j'ai soit 1 soit 0.

Je réalise dans un premier temps un filtre élaboré, me gardant que les lignes où il y a un 1 soit dans Binaire1 soit dans Binaire2. Il me reste donc 4 "Truc" et 2 "Machin". Grâce à un userform composé de deux checkbox, je réalise un filtre automatique afin de me garder seulement les 4 "Truc" sauf que quand je réalise ce filtre automatique, il me met seulement les 8 "Truc" du départ. Je souhaite donc grâce un seul bouton "Filtrer" de mon userform faire ces deux filtres en ayant mes 4 "Truc" à la fin.

Voici mon code VBA :

Sub Filtrer()

If Crit1 = "" And Crit2 = "" Then ActiveSheet.Range("$A$1:$C$14").AutoFilter Field:=1: Exit Sub

ActiveSheet.Range("$A$1:$C$14").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("critèreP"), Unique:=False

ActiveSheet.Range("$A$1:$C$14").AutoFilter Field:=1, Criteria1:=Array(Crit1, Crit2), Operator:=xlFilterValues

End Sub

Je pense qu'il faut mettre un XFilterCopy ou quelque chose du genre... Merci de votre aide.

Et j'ai un autre problème, si possible, que si dans mon UserForm je coche "Machin" qu'il me mette les 2 "Machin" automatiquement à place des 4 "Truc" et ne pas les rajouter.

Bonjour à tous,

et merci de faire vivre ce forum et de me faire apprendre plein de choses

Voilà ce qui m'amène auj.

j'ai deux tableaux croisés dynamiques avec deux sources différentes de même architecture.

Et je voudrais qu'en changeant la valeur du filtre d'un tableau croisé (cellule B3 de la feuille synthèse), cela me change automatiquement la valeur du filtre du second (H3 de la feuille synthèse) avec actualisation des données

merci d'avance pour votre aide.

Un exemple en pièce jointe

32tcd-1.xlsx (18.13 Ko)

bonjour a tous

voila j`ai un problème est que les clients doivent entrer les données seulement dans des cellules déterminées. Les autres cellules sont marquées en gris pour ne pas les toucher. Sauf que pour certains des clients c'est trop compliqué. Tu peux leur expliquer autant que tu veux, ils vont oublier et entrer les données là, où il ne faut pas.

Il a fallu protéger les champs où ils ne doivent pas entrer des données. Sauf que quand j`ai fait la protection de la feuille, ça bloque aussi la fonction de passer d'une vue (sans filtre) à une autre vue, avec un filtre activé . On a buté sur le fait qu'une fois la feuille verrouillée, on ne peut pas changer de vue, aucun menu ne semble donner cette possibilité.

j`ai pensé de contourner ça avec un macros qui va exécuter une série de commandes: débloquer le feuille, passer dans l'autre mode, bloquer la feuille de nouveau. Ça serait un moyen de donner au comptable un outil simple pour pouvoir passer d'une vue à une autre sans exécuter une série de commandes compliqués, parce qu'il va se perdre si c'est trop compliqué. mon problème est que je ne sait pas faire ce macros

merci a l`avance

Bonjour,

Je travaille sur un fichier Excel, c'est une liste faites de noms et d'info relative à ces personnes.

Pour retrouver ces personnes, j'utilise des filtres qui sont pour moi plus pratique que la fonction recherche.

Depuis que j'ai atteint la ligne 14661, le filtre n'est plus aussi performant. Il filtre bien entre la ligne 1 et 14660, mais laisse les lignes >14660.

Si je fais un filtre sur une donnée qui est > 14661, le filtre ne fonctionne pas.

Bref, je suis bien embêter, parce que toute l'utilité de ce fichier est de réussir à filtre pour avoir les infos que j'ai besoin concernant ces personnes.

Sauriez vous d'où peut venir le problème ? Est ce parce qu'il y a trop de données ?

Merci d'avance pour votre réponse.

Bonjour Forum !

Je me casse les méninges pour comprendre comment marchent les filtres élaborés.

Je n'ai pas réussi à trouver un tutorial qui me permette de comprendre comment ça marche...

Je voudrais créer un filtre qui s'applique à une liste de mots (un eplage nommée : "plage_à_trier").

L'idéal serait un bouton qui masque automatiquement les lignes qui ne contiennent pas dans la colonne B une chaîne de caractères spécifiée ligne 2 (voir fichier joint).

Mais je ne comprends même pas comment le faire faire à Excel manuellement...!

Dernier truc : si possible, j'aimerais qu'un clic sur le bouton lance le filtre et un 2ème clic réaffiche tout. Et ça, je ne sais pas le faire non plus.

Help !

Merci

123exemple.xls (18.50 Ko)

Bonjour,

Suite à ma question sur les filtres élaborés, je reviens vers vous pour ce problème que je rencontre :

  • J'ai fait un filtre avancé pour n'afficher que certaines lignes contenant la donnée saisie (avec *).
  • Cependant quand je change la donnée, le filtre ne marche pas automatiquement.
  • J'ai donc ouvert les fichiers transmis par Claude (dubois) et Nad-Dan, cliqué sur Alt-F11 pour voir le code VBA
  • Ne conaissant rien en VBA, j'ai fait un copier-coller tout bête du code commun à ces 2 fichiers (partie Objet : Feuille 1) :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)

Call Filtre

End Sub

  • J'ai également saisi la partie Module 1 en changeant les bonnes celules.
  • Toutefois un message d'erreur apparaît: "Les fonctionnalités suivantes ne peuvent pas être enregistrées dans des classeurs sans macro : .Projet VB

Que puis-je faire pour que le code VBA soit appliqué.

Merci d'avance pour votre aide

Bonjour à tous,

Je me permets de vous solliciter car je bloque sur un problème lors de l'utilisation des segments pour filtrer un tableau excel.

Mon fichier (voir PJ) est composé de 2 feuilles (1 base de données, et un tableau de bord qui filtre via des segments cette base de données).

J'aimerais faire apparaître dans une cellule sous les filtres, le prix du produit correspondant aux filtres que j'ai effectué.

L'information 'prix' est situé en colonne F de la base de données.

Auriez vous une idée pour me débloquer ? :)

Je vous remercie par avance pour votre réponse,

Bien cordialement

Mav'

Bonjour,

Tous les mois, j'ai un TCD qui me permet de suivre la production. En fin de mois je l'envoi par mail et je re paramètre les filtres dates pour le mois à venir. J'aimerai que la période ce redéfinisse automatiquement à l'issu de l'envoie du mail.

Ce matin, j'ai fait avec l'enregistreur macro ceci

Range("A6").Select
 ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("DATE"). _
 ClearAllFilters
 ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("DATE"). _
 PivotFilters.Add2 Type:=xlDateBetween, Value1:="01/08/2020", Value2:= _
 "31/08/2020"

Je me demande comment je dois faire pour automatiser les dates début et fin de mois ? De ce que je comprends, il faut qu'elles soient en format texte?

Merci de vos lumières

Leakim

Bonjour,

Je souhaiterais savoir s'il existe une instruction dans VBA permettant de sélectionner automatiquement la date précédente dans un filtre (voir exemple ci-dessous)

image

Concrètement, mon fichier est par exemple en date du 01/04, à l'ouverture de ce fichier, la date qui apparaîtra dans le filtre sera celle du 30/03, je souhaiterais que J-1, soit le 31/03 soit automatiquement coché dans le filtre. Les jours non ouvrés n'apparaissent jamais dans le filtre en question.

En vous remerciant par avance pour votre aide.

Bonne journée.

Bonjour tout le monde,

Je me posais la question tout à l'heure, j'aimerais savoir s'il est possible d'effectuer une boucle qui parcourt tous les filtres disponible

J'ai voulu essayer avec la méthode Advanced filter, cependant ça n'a pas marché comme possible, étant donné que le filtre avancé ne marche que sur la feuille actuelle.

Merci beaucoup à vous par ailleurs.

Bonsoir,

J'ai voulu concevoir un filtre en utilisant l'option "filtre avancer". L'idée est de filtrer des commandes sur une machine ou toutes les machines de la date xx/xx/xxxx à la date xx/xx/xxxx. Ce n'est pas évident pour moi.(J'ai réussi à comprendre le concept de "Macros" , c'est déjà un début)

Toutefois, j'ai analysé mon problème et je pense commencer par vous demander l'aide à résoudre les tâches suivantes:

1- Comment puis-je copier automatiquement ( à chaque modification) une zone du tableau dans l'onglet "planning" sur l'onglet "Source"

2- Quelles sont les formules nécessaires pour avoir un filtre de la date à la date.C'est à dire de --- à ---.

3- J'ai essayé deux méthodes ( sur tableau de bord ), je ne sais pas sur laquelle dois-je corriger et continuer !!!!

Merci d'avance.

Bonjour à tous

je suis nouvelle sur le forum et débutante sur power pivot.

je souhaite à terme calculer un cout de revient via power pivot. j'ai deux tables de faits (uen balance comptable et un relevé des valeurs par inducteurs de coût)

Pour débuter , je travaille sur

- une balance

- des lignes de couts qui regroupent des comptes (issus de la balance)

Pour commencer j'ai tenté de faire un tcd me donnant le montant associé à chaque ligne de coût. (je commence par du très basique!!)

Très simple a priori et pourtant le tcd me donne le même montant à chaque ligne de coût et je ne comprends pas pourquoi.

Y a il une mesure à créer ? me suis je trompée dans les relations à créer ....

Bref, c'est très simple mais déjà compliqué pour une débutante !

Merci par avance pour celui ou celle qui prendra le temps de me répondre.

Sabrina

Bonjour,

J'ai un problème : j'aimerai récupérer pour mon TDB le nombre de RDV que j'ai fais la semaine passé et pour le mois en cours,

j'ai essayé avec un TCD, avec plusieurs formule mais je n'y arrive pas.

Ci-dessous ce que je veux récupérer en rouge:

3test1.xlsx (16.70 Ko)
capture

Merci pour votre aide

Bonsoir chers tous

Sur ma feuille "A" je voudrais faire un filtre sur la colonne 9 et avec les données filtrées opérer un filtre avancé puis coller le résultat sur la feuille "B"

Voici ce que j'ai essayé mais cela ne marche pas. Merci de m'aider

Sub Filtre()
Dim p As Range
Set p = Sheets("A").Range("A1:M" & Sheets("A").Range("A" & Rows.Count).End(xlUp).Row)
p.AutoFilter Field:=9, Criteria1:="Non"
With Sheets("B")
    p.SpecialCells(xlVisible).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=.Range("A1:G1"), Unique:=True
End With
p.AutoFilterMode = False
End Sub
2classeur1.xlsm (22.64 Ko)

Bonjour à tous,

J'ai crée un code permettant de filtrer une colonne d'un fichier 1 avec le nom du fichier sélectionné. Mon code marchait bien jusque là, malheureusement maintenant quand je l’exécute il applique bien un filtre sur le fichier 1 mais n'affiche aucune ligne du tableau (cf screenshot).

Voici mon entier code, si vous avez une idée pour solutionner l'erreur, je vous remercie :) :

Sub Note_de_débit_2()

Dim FileName As Variant
Dim wbSource As Workbook 'fichier factures
Dim wbInitial As Workbook 'fichier note de débit
Dim wsSource As Worksheet
Dim numero As String

FileName = Application.GetOpenFilename(Title:="Veuillez sélectionner la note de débit")
    If FileName = False Then Exit Sub
Workbooks.Open FileName

Set wbInitial = ActiveWorkbook
wbInitial.Sheets("Note de débit").Activate

numero = ActiveWorkbook.Name
If InStr(numero, ".") > 0 Then
    numero = Left(numero, InStr(numero, ".") - 1)
End If

    Set wbSource = Workbooks("Détail factures EMC JUIN 2020")
    Set wsSource = wbSource.Sheets("Détail factures EMC")

With wsSource
    On Error Resume Next
    .ShowAllData
    Err.Clear
    .Range("A3").AutoFilter Field:=1, Criteria1:="=*" & numero & "*"

End With

wbSource.Activate

End Sub

Je pense que l'erreur est sur cette partie, mais je ne vois pas où (ce code marchait bien jusqu'alors...) :

With wsSource
    On Error Resume Next
    .ShowAllData
    Err.Clear
    .Range("A3").AutoFilter Field:=1, Criteria1:="=*" & numero & "*"

End With

Voici à quoi ressemble le filtrage après exécution :

excel1

Je vous remercie pour votre aide !

Victoire

Bonjour à toutes et à tous,

J'ai actuellement, dans plusieurs colonnes, un bouton qui me permet de trier de A à Z dans un tableau avec des filtres automatiques.
Le tableau fait 900 lignes sur 453 colonnes. (De A18 à QK900)

Je cherche à optimiser mon code (et mon temps) afin de n'avoir plus qu'un seul bouton qui trierait la colonne dans laquelle la cellule est active.
(Si je sélectionne la cellule "D20" ou "D200" et que je clique sur le bouton, je souhaiterai qu'il me trie la colonne "D"

Une petite idée pour m'aider svp ?

Merci d'avance.

Geof

Actuellement j'ai le code là qui fonctionne très bien mais je dois insérer un bouton dans chaque colonne :

ActiveSheet.AutoFilter.Sort.SortFields.Clear

ActiveSheet.AutoFilter.Sort.SortFields.Add Key:=Range("N18:N900"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal

With ActiveSheet.AutoFilter.Sort

.Header = xlYes

.MatchCase = False

.Orientation = xlTopToBottom

.SortMethod = xlPinYin

.Apply

End With

Recherches récentes

champ_recherche xlsgestion archivesbouton copier userformcopier resultat userformconsoliderconsolidationeuromillionenvoie mail automatiquestopvendredi moisbon coinajouter menuajout menumodifier menumenu supplementairesupprimer lignesupprimer ligne valeur feuilletableau croise dynamiqueville code postal32440 caste lnau auzanreport contenu