begin process at 2010 03 21 15:59:41
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

VBA

 > EXCEL VBA - FILTRER LE CONTENU D'UNE LISTVIEW

EXCEL VBA - FILTRER LE CONTENU D'UNE LISTVIEW


 Information sur la source

Note :
9 / 10 - par 4 personnes
9,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :VBA Classé sous :excel, vba, listview, filtre Niveau :Initié Date de création :05/10/2007 Vu / téléchargé :13 696 / 1 143

Auteur : lesly_lodin

Ecrire un message privé
Site perso
Commentaire sur cette source (45)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Voici une petite démo qui vous permettra de filtrer "on the fly" le contenu d'une listview, en sélectionnant au préalable le champ sur lequel le filtre doit être appliqué. Enjoy !

Source

  • Option Explicit
  • Private Sub TextBox1_Change()
  • Call LVW_Fill(Trim$(TextBox1.Text), ComboBox1.ListIndex)
  • End Sub
  • Private Sub UserForm_Activate()
  • Me.Caption = "Historique des commandes"
  • Set ListView1.Icons = ImageList1
  • Set ListView1.SmallIcons = ImageList1
  • Call CBO_Fill
  • Call LVW_Fill("", 0)
  • End Sub
  • Private Sub CBO_Fill()
  • 'Variables locales
  • Dim iCnt As Integer
  • Dim oRng As Excel.Range
  • 'Remplit la Combo
  • Set oRng = Feuil1.Cells(1, 1)
  • For iCnt = 0 To 13 '-- 14 colonnes
  • ComboBox1.AddItem oRng.Offset(0, iCnt)
  • Next iCnt
  • ComboBox1.ListIndex = 0
  • End Sub
  • Private Sub LVW_Fill(ByVal sFilter As String, ByVal iCol As Integer)
  • 'Variables locales
  • Dim iCnt As Integer
  • Dim iRnd As Integer
  • Dim oRng As Excel.Range
  • Dim oItem As ListItem
  • 'Initialisation de la ListView
  • ListView1.ColumnHeaders.Clear
  • ListView1.FullRowSelect = True
  • ListView1.ListItems.Clear
  • ListView1.View = lvwReport
  • 'Remplissage de la ListView
  • Set oRng = Feuil1.Cells(1, 1)
  • Do Until oRng.Offset(1, 0).Value = ""
  • '-- En-têtes
  • If oRng.Row = 1 Then
  • For iCnt = 0 To 13 '-- 14 colonnes
  • ListView1.ColumnHeaders.Add , , oRng.Offset(0, iCnt)
  • Next iCnt
  • '-- Données
  • Else
  • iRnd = Int((4 * Rnd) + 1)
  • If LCase$(Left$(oRng.Offset(0, iCol), Len(sFilter))) = LCase$(sFilter) Then
  • Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0), "Key" & iRnd, "Key" & iRnd)
  • For iCnt = 1 To 14 '-- 14 colonnes
  • oItem.ListSubItems.Add , , oRng.Offset(0, iCnt)
  • Next iCnt
  • End If
  • End If
  • Set oRng = oRng.Offset(1, 0)
  • Loop
  • End Sub
Option Explicit

Private Sub TextBox1_Change()
    Call LVW_Fill(Trim$(TextBox1.Text), ComboBox1.ListIndex)
End Sub

Private Sub UserForm_Activate()
    Me.Caption = "Historique des commandes"
    Set ListView1.Icons = ImageList1
    Set ListView1.SmallIcons = ImageList1
    Call CBO_Fill
    Call LVW_Fill("", 0)
End Sub

Private Sub CBO_Fill()
    'Variables locales
    Dim iCnt As Integer
    Dim oRng As Excel.Range

    'Remplit la Combo
    Set oRng = Feuil1.Cells(1, 1)
    For iCnt = 0 To 13 '-- 14 colonnes
        ComboBox1.AddItem oRng.Offset(0, iCnt)
    Next iCnt
    ComboBox1.ListIndex = 0
End Sub

Private Sub LVW_Fill(ByVal sFilter As String, ByVal iCol As Integer)
    'Variables locales
    Dim iCnt As Integer
    Dim iRnd As Integer
    Dim oRng As Excel.Range
    Dim oItem As ListItem

    'Initialisation de la ListView
    ListView1.ColumnHeaders.Clear
    ListView1.FullRowSelect = True
    ListView1.ListItems.Clear
    ListView1.View = lvwReport

    'Remplissage de la ListView
    Set oRng = Feuil1.Cells(1, 1)
    Do Until oRng.Offset(1, 0).Value = ""
        '-- En-têtes
        If oRng.Row = 1 Then
            For iCnt = 0 To 13 '-- 14 colonnes
                ListView1.ColumnHeaders.Add , , oRng.Offset(0, iCnt)
            Next iCnt
        '-- Données
        Else
            iRnd = Int((4 * Rnd) + 1)
            If LCase$(Left$(oRng.Offset(0, iCol), Len(sFilter))) = LCase$(sFilter) Then
                Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0), "Key" & iRnd, "Key" & iRnd)
                For iCnt = 1 To 14 '-- 14 colonnes
                    oItem.ListSubItems.Add , , oRng.Offset(0, iCnt)
                Next iCnt
            End If
        End If
        Set oRng = oRng.Offset(1, 0)
    Loop
End Sub

 Conclusion

Vous pouvez modifier cette source à volonté pour pouvoir la personnaliser. Toute question ou suggestion est la bienvenue.

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
  • VBA_Filtered_ListView.xlsTélécharger ce fichier [Réservé aux membres club]222 720 octets

Télécharger le zip


 Sources de la même categorie

LIEN HYPERTEXTE SOUS EXCEL EN PARTAGE par LMJ
Source avec Zip OUTIL DE FORMATION par l0r3nz1
Source avec Zip Source avec une capture UN PHOTO RESIZEUR par patosch
CONVERSION D'UN NOMBRE EN "PACKED NUMBER", ET INVERSEMENT par WebSeb
COPIER LES TEXTES D'UNE DIAPOSITIVE POWERPOINT SAUF LES ESPA... par GMY

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture Source .NET (Dotnet) FICHIERS_CACHÉS_LECTURE_SEULE par Le Pivert
Source avec Zip Source avec une capture DÉMINEUR VBA EXCEL par SylvainDev
Source avec Zip Source avec une capture Source .NET (Dotnet) LISTVIEW_TRI_EXTENSIONS par Le Pivert
Source avec Zip MISTER MIND SOUS VBA DANS EXCEL AVEC ENREGISTREMENT DES SCO... par jhfdgql37wdbf
Source avec Zip Source avec une capture RENOMMER SÉRIE D'IMAGE DIRECTEMENT AVEC VBA EXCEL (CLASSEMEN... par davidparison

Commentaires et avis

Commentaire de klhsri le 27/10/2007 18:01:19 10/10

Excellent !
Je me forme à VBA (excel notamment)
Excellent code et directement utile pour toute appli de gestion
Merci

Commentaire de 7ric le 13/11/2007 10:46:14

Excellent code effectivement.
Juste un petit problème:
Dans la feuille Excel, nous avons la dernière commande 11077.
Cette commande n'est pas reprise dans l'historique des commandes et ne pourra donc jamais être reprise.
Avez-vous pu corriger ce petit problème?
Merci d'avance,
Cédric

Commentaire de lesly_lodin le 13/11/2007 13:30:24

Il suffit de remplacer [Do Until oRng.Offset(1, 0).Value = ""] par [Do Until oRng.Value = ""] dans la partie "Remplissage de la ListView" de la procédure [LVW_Fill].

Cdlt

Commentaire de 7ric le 13/11/2007 13:51:28

OK merci beaucoup
Cédric

Commentaire de card le 26/05/2008 14:06:44

Salut

Super ce petit bout de code  !!!

Pouvez vous m'aider ?
J'ai une colonne status et l'image doit changer en fonction du status
Comment faire puisque dans le code initial il ya un random sur les 4 images stockees dans la imagelist1

Merci d'avance

Commentaire de lesly_lodin le 28/05/2008 21:14:09

Salut,

La fonction Rnd() est juste là à titre d'exemple. Dans ta colonne [Status], tu peux par exemple mettre la [Key] correspondant à l'image à afficher dans la [ListView1]. Cette [Key] est définie dans le contrôle [ImageList1]. Enfin, dans ton code, remplace ["Key" & iRnd] par [oRng.Offset(0, <no_col_status>).Value].

Bon développement.
Cordialement.

Commentaire de card le 29/05/2008 16:23:19

Salut
Desolé de t'embeter avec ça ......

j'ai remplacé
Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0), "Key" & iRnd, "Key" & iRnd)

par

Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0), (oRng.Offset(0, 3).Value), (oRng.Offset(0, 3).Value))

mais c'est pas mieux
si tu as une idée ...merci d'avance

Commentaire de card le 29/05/2008 16:32:47

J'ai rien dit .....
je me suis seulement gourré de colonne c'est la 2
merci ça marche super

Commentaire de Aegidius le 22/06/2008 01:32:19 9/10

Bonsoir.
Je suis très très débutant en programmation...
et je n'arrive pas à l'adapter à mon fichier excel (5 colonnes avec titres).
Où taper le code ? L'interface est-elle à créer ?

A vous lire. Merci d'avance.

Commentaire de platon1977 le 04/08/2008 13:18:42

comment supprimer les logos de la liste? svp

Commentaire de lesly_lodin le 04/08/2008 13:34:20

BONJOUR,

Dans la ligne de code n° 53, il suffit de retirer les deux derniers paramètres : ["Key" & iRnd] et ["Key" & iRnd].

Cdlt

Commentaire de platon1977 le 04/08/2008 13:47:48

salut Lesly,

Merci pour le tuyau, il super ton code. encore une petite question
je suis entrain de l'adapter a une petite appli. Je rajoute des filtres : 4 en tout.
mes combo se remplissent nickel, la selction tourne bien sur le premier critère, mais bloque sur le deuxieme (ou du moin le critère 1 n'est plus pris en compte. as tu une idée.Stp ca m'aiderait beaucoup.

Commentaire de lesly_lodin le 04/08/2008 14:00:11

Je n'ai pas beaucoup de temps devant mois ces jours-ci. Essaie de voir la documentation VBA sur la fonctionnalité AUTOFILTER de la WORKSHEET.

Bon courage.
Cdlt.

Commentaire de HAMDANEABDELKADER le 20/10/2008 10:32:24

Salut,
Ton code est formidable.
Comment faire pour filtrer une liste en fonction de deux date (DateBetween)
Date du debut et date du Fin

Commentaire de lesly_lodin le 20/10/2008 11:10:41

Salut,

En ligne 52, il suffit de remplacer "If LCase$(Left$(oRng.Offset(0, iCol), Len(sFilter))) = LCase$(sFilter) Then" par "If oRng.Offset(i, j) >= #mm/jj/aaaa# and oRng.Offset(k, l) <= #mm/jj/aaaa#" où oRng.Offset(i, j) contient la date de début et oRng.Offset(k, l) contient la date de fin.
Bon courage.

Commentaire de HAMDANEABDELKADER le 20/10/2008 15:56:01

Merci infiniment, je vais essayer ça.

Commentaire de HAMDANEABDELKADER le 20/10/2008 16:40:39

j'ai déclaré i,j,k,l as date et j'ai introduit laligne:
If oRng.Offset(i, j) >= "#mm/jj/aaaa#" and oRng.Offset(k, l) <= "#mm/jj/aaaa#" then
il n'mz rien donner.
listView vide.
La procedure se fait on principe on créant deux textBox:
1- Date debut
2 Date fin

Commentaire de HAMDANEABDELKADER le 26/10/2008 19:20:59

Quelqu'un peut répondre à mon méssage du 20/10/2008 à 16:40:39
SVP.
Merci d'avance

Commentaire de PCPT le 26/10/2008 19:41:08 administrateur CS

HAMDANEABDELKADER ->lesly_lodin t'a répondu, et t'a indiqué le format => #mm/jj/aaaa#

forcément si tu saisies juste la STRING "#mm/jj/aaaa#", il n'y aura pas de filtre de date....

ps : "j'ai déclaré i,j,k,l as date"
1. bravo pour te relire, c'est impossible de savoir quoi sert à quoi
2. alors seul l est une DATE, le reste est VARIANT

dim dStart as date, dStop as date
dStart = #10/01/2008#
dStop = #10/31/2008#

If (cdate(oRng.Offset(i, j)) >= dStart) and (cdate(oRng.Offset(k, l)) <= dStop) then ...

Commentaire de HAMDANEABDELKADER le 27/10/2008 09:20:46

ve n'arrive pas comment vous remerciez Lesly_Lodin, PCPT pour cette aide.
j'ai trés bien compris.
merci encore.


Commentaire de lesly_lodin le 27/10/2008 10:52:50

Désolé pour le retard dans ma réponse HAMDANEABDELKADER, j'étais un peu pris cette fin de semaine.

Merci d'avoir pris le relai PCPT ;oD

Bonne semaine à tous.

Commentaire de HAMDANEABDELKADER le 27/10/2008 10:58:27

Je souhaite le bonheur à vous tous.

Commentaire de HAMDANEABDELKADER le 27/10/2008 19:42:21

Salut
vraiment desolé de t'embeter avec ça, j'ai pas le droit d'abondonner aussi facilement. J'ai essayé avec ça, rien à afficher.
-------------------------------------------------

Option Explicit

Private Sub TextBox1_Change()
    Call LVW_Fill(Trim$(TextBox1.Text), ComboBox1.ListIndex)
End Sub

Private Sub UserForm_Activate()
    Me.Caption = "Historique des commandes"
    Set ListView1.Icons = ImageList1
    Set ListView1.SmallIcons = ImageList1
    Call CBO_Fill
    Call LVW_Fill("", 0)
End Sub

Private Sub CBO_Fill()
    'Variables locales
    Dim iCnt As Integer
    Dim oRng As Excel.Range

    'Remplit la Combo
    Set oRng = Feuil1.Cells(1, 1)
    For iCnt = 0 To 13 '-- 14 colonnes
        ComboBox1.AddItem oRng.Offset(0, iCnt)
    Next iCnt
    ComboBox1.ListIndex = 0
End Sub

Private Sub LVW_Fill(ByVal sFilter As String, ByVal iCol As Integer)
    'Variables locales
    Dim iCnt As Integer
    Dim iRnd As Integer
    Dim oRng As Excel.Range
    Dim oItem As ListItem
    Dim Dstart As Date, DEnd As Date, l As Date
    Dim i As Variant, j As Variant, k As Variant
    
    Dstart = #1/1/2006#
    DEnd = #12/31/2006#
    
    'Initialisation de la ListView
    ListView1.ColumnHeaders.Clear
    ListView1.FullRowSelect = True
    ListView1.ListItems.Clear
    ListView1.View = lvwReport

    'Remplissage de la ListView
    Set oRng = Feuil1.Cells(1, 1)
    Do Until oRng.Offset(1, 0).Value = ""
        '-- En-têtes
        If oRng.Row = 1 Then
            For iCnt = 0 To 13 '-- 14 colonnes
                ListView1.ColumnHeaders.Add , , oRng.Offset(0, iCnt)
            Next iCnt
        '-- Données
        Else
            iRnd = Int((4 * Rnd) + 1)
    '  If LCase$(Left$(oRng.Offset(0, iCol), Len(sFilter))) = LCase$(sFilter) Then
             If (CDate(oRng.Offset(i, j)) >= Dstart) And (CDate(oRng.Offset(k, l)) <= DEnd) Then
            
                Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0), "Key" & iRnd, "Key" & iRnd)
                For iCnt = 1 To 14 '-- 14 colonnes
                    oItem.ListSubItems.Add , , oRng.Offset(0, iCnt)
                Next iCnt
            End If
        End If


        Set oRng = oRng.Offset(1, 0)
    Loop
End Sub
-----------------
Merci.

Commentaire de lesly_lodin le 28/10/2008 13:07:07

Cela provient de l'utilisation de la fonction OffSet. Dans la ligne "(CDate(oRng.Offset(i, j)) >= Dstart) And (CDate(oRng.Offset(k, l)) <= DEnd)" tu dois comparer une seule cellule à la borne Dstart et Dend.

Exemple : si la date est en colonne E on aura "(CDate(oRng.Offset(0, 4)) >= Dstart) And (CDate(oRng.Offset(0, 4)) <= DEnd)" où "oRng.Offset(0, 4)" décale le pointeur de 0 ligne et de 4 colonnes par rapport à la colonne de départ A (cf. Aide en ligne de OffSet).

Bon courage.

Commentaire de HAMDANEABDELKADER le 28/10/2008 16:45:10

salut,
je vais créer deux texteBox: la 1ère:= date du debut et la seconde:=date de la fin
et ensuite un boutton afficher qui contient ce code.
meci pour cette aide
je ne vous oublierez jamais.

Commentaire de chapata le 04/12/2008 22:31:12

un seul mot : SUPER !

Commentaire de lesly_lodin le 05/12/2008 11:54:43

Merci Chapata.
De quoi me remotiver ;oD

Commentaire de diaz42 le 03/04/2009 15:29:35

merci pour ce code

Commentaire de lesly_lodin le 03/04/2009 17:07:19

De rien.

Je suis heureux de constater que ce vieux snippet rend toujours service.

Bon WE

Commentaire de robinsdesforets le 12/10/2009 06:28:52 7/10

bonjour, merci pour ce travail à tous.
je souhaite adapter ce code pour une BDD de 60 colonnes et 8000 lignes. je souhaite au lancement de l'userform que l'utilisateur selectionne par une listebox les entêtes de colonne qu'il souhaite afficher dans sa listview et qu'il puisse ensuite la filtrer au maximun sur 5 critères.
Cela est-il réalisable ou je demande l'impossible ?
le but pour moi étant ensuite de recopier sur une autre feuille excel ce que l'utilisateur aura sélectionné( 1 ou des lignes après son filtrage). Merci d'avance à tous .

Commentaire de lesly_lodin le 12/10/2009 12:03:13

C'est réalisable, pour cela il suffit de créer ta ListBox avec l'attribut MultiSelect, puis de générer la ListView lors d'un clic sur une bouton de commande par exemple.
Bon développement.

Commentaire de robinsdesforets le 12/10/2009 19:04:24

Merci pour ta réponse si rapide.
Mais j'ai oublié de te dire que je débute en VBA.
Selon toi, il semble donc possible de "formater" en dynamique sa listview avec une listbox avec l'attribut MultiSelect par l'événement change de la listBox.
Mais penses-tu qu'il est ensuite possible de filtrer cette base sur 5 critères ?


Un petit coup de pouce m'est indispensable pour démarrer.

Merci d'avance pour le temps que tu consacre aux autres.

Commentaire de lesly_lodin le 12/10/2009 19:22:43

Oui, pour cela il faudra disposer sur la Form cinq zones de texte (une par critère autorisé) ce qui limitera la requête à "au plus 5 critères".

Bon courage.

Commentaire de robinsdesforets le 12/10/2009 19:39:24

Merci pour l'information, mais je veux faire un filtre automatique sur les entêtes de colonne de la listview qui serait déjà formaté par mon choix dans la listBox. En clair, je souhaite de ma BDD ( 60 colonnes, 8000 lignes) extraire des colonnes + données et faire ensuite un filtre automatique sur ces entêtes de colonnes pour qu'ensuite l'utilisateur sélectionne ses données afin de les les recopier sur une autre feuille excel.

Cordialement,      

Commentaire de fredo97893 le 18/10/2009 09:57:04

bonjour et merci pour ce petit prog.
J'aurai juste une petite question.
Pourquoi la listview n'affiche pas la dernière ligne écrite? N° commande 11077 n'apparait pas
merci de me répondre

Commentaire de fredo97893 le 18/10/2009 11:38:43

re-bonjour,
je souhaiterais que lorsque dans le combobox1 je selectionne DATE, que dans le textbox je ne mette que l'année et non la date entière afin de faire apparaitre dans la listview la liste de cette année. est ce possible. (Pour ce qui est de la question au dessus, j'ai trouvé.)

Commentaire de robinsdesforets le 18/10/2009 21:44:22

Bonjour,
Pour les pros de VBA, il est possible actuellement de filtrer "on the fly" le contenu de cette listview (merci à son auteur).
Mais serait il possible de la filtrer sur plusieurs critères.
je m'explique:
Il faudrait remplacer le TextBox1 existant par une ListBox1 alimenté par les données filltrées sans doublon de la combobox1.
La Listview serait alors partiellement filtrée par le choix de l'utilisateur.
Il faudrait créée ensuite un deuxième ComboBox qui alimenterait une deuxième Listbox2 (toujours alimenté sans doublon) pour un filtrage de nouveau "on the fly" de la Listview déjà filtrée par son premier choix. (Idem que la fonction filtre élaboré d'Excel sur plusieurs critères)
Je corse l'histoire, il me faut 5 comboboxs et 5 Listboxs pour que l'utilisateur trouve automatiquement dans la listview la(es) donnée(s) qu'il souhaite afin de les copier sur une autre feuille Excel.
J'avoue que je demande votre aide, je séche...

Commentaire de robinsdesforets le 20/10/2009 23:17:47

Bon les Pros sont en vacances ?
Ou mon problème est insurmontable? (post du 18/10 à 21h44)

Commentaire de lesly_lodin le 21/10/2009 09:42:42

Non les pros de VBA ne dorment pas , mais les temps sont durs et je n'ai que peu de temps à consacrer à ce blog. En bref tu as tout dit dans ta question :

1. A chaque fois que tu listes les champs à filtrer dans la combobox1 tu déclenches un remplissage de ta combobox2 à l'aide d'un "SELECT DISTINCT"

2. Tu testes ensuite quel est le nombre de critères utilisé par l'utilisateur puis tu intègres chaque couple combobox CHAMP et combobox CRITERE dans un clause WHERE pour filtrer ta listview

J'espère que cela t'aidera à avancer.
Bon développement.
Bon

Commentaire de robinsdesforets le 21/10/2009 20:59:35

merci pour ta réponse (trop pro) mais là... je pense que je n'ai pas les compétences pour suivre tes explications.
Je séche...
je crois que je vais abandonner mon projet. Merci quand même à toi.

Commentaire de robinsdesforets le 30/10/2009 20:25:45

Bonjour,
bon je relance mon post du 18/10/2009 à 21h44.
Estce que tous le monde est occupé ou ma demande est trop difficile?
Je suis certain que mon projet interesse beaucoup de personnes.
Alors envie d'avoir une notoriété ou je mets mon projet à la poubelle?  

Commentaire de robinsdesforets le 07/11/2009 08:14:53

Bon je désespére, tous le monde est en vacance ? (Post du 18/10/2009 21h:44
Une âme charitable pourse pencher sur mon problème?

Commentaire de shinpoo7 le 11/01/2010 00:08:57 10/10

Bon OK le code est super nickel mais c'est un peu de la triche dans la mesure où la feuille est relue à chaque fois que le texte de la textbox1 change ! C'est pas dynamique !
Le titre devrait être "filtre sur les données d'une feuille de calcul et affichage dans une listview."

Je voudrais faire pareil avec les contacts de Outlook mais la connexion est lente. Je ne veux pas relire tous les contacts à chque fois !
Si quelqu'un a une idée ! Dommage qu'on puisse pas mettre la hauteur de ligne à 0 pour masquer celles qui sont filtrées !

Commentaire de lesly_lodin le 12/01/2010 16:39:42

Cher SHINPOO7,

Ce code "super nickel" que j'ai mis à la disposition des utilisateurs de CodeS-SourceS ne prétend pas être LA solution à un remplissage dynamique d'une ListView. C'est une ébauche de solution qui a le mérite de donner satisfaction à la demande initiale.

Je n'aime donc pas trop le terme "triche" qui dévalorise une solution qui fonctionne correctement. Libre à toi de l'optimiser et de nous en faire profiter. Je serai le premier à t'en féliciter.

Bien le bonjour de la Guadeloupe ;oD

Commentaire de Le Pivert le 28/01/2010 17:38:57

Félicitation LESLY_LODIN pour sur ce programme et j'ai une solution pour SHINPOO7:
Voici 2 sources qui feront peut_être son bonheur.
http://www.vbfrance.com/codes/LISTER-OUTLOOK-PARTIR-EXCEL_48091.aspx
http://www.vbfrance.com/codes/LISTVIEW_TRI_EXTENSIONS_50894.aspx

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Vba Excel filtre de doublons [ par rvw68 ] BonjoursJ'ai une plage de données contenant des Nr d'emplacements. une autre dans laquelle j'attribue les emplacements à des personnes. Je veux avoir filtre excel en VBA [ par jimmyc ] Je debute dans la programmation VBA. Dans une feuille Excel filtrée je voudrais récupérer le nombre d'élément et les différents éléments contenu dans VBA Excel : Filtre personnalisé avec 3 conditions [ par hachebe ] Bonjour,Sous Excel, je souhaite activer un filtre automatique personnalis&#233; (selection.autofilter) avec 3 valeurs possibles. Est-ce possible ? Filtre auto vba 6.3 Excel 2007 [ par helpvb ] Bonjour J aurais besoin du code vba6.3 afin d'activer un filtre sur la 1ere ligne de ma feuille Excel 2007 Je précise cette feuille est protégée et l VBA Excel - Voir première page d'un PDF [ par Tenanio ] Bonjour à tous,J'ai créé une base recensant tous les fichiers d'un répertoire avec leur adresse. Ce ne sont que des .pdf et j'aimerais que lorsque l'o bordure cellule vba excel [ par antoine_ferard ] bonjour,- je développe en vba sous excel.- je rempli une cellule de la manière suivante : Sheets(strSheetName).Range("A1") = "salut"ma question : quel lire les caractere d'une cellule excel en VBA [ par faucheuse ] Bien le bonjours amis programeurs et programmeuzesAlors voila j'aimerais lire les une cellule d'excel caractère par caractè transposer une formule excel en vba? [ par Fabian123 ] Bonjour!voilà, j'ai une formule dans mon fichier excel (elle me permet de faire une moyenne)ma question est-il possible de la retranscrire en vba (ai Aide pour VBA excel URGENT [ par tatoom95 ] Bonjour,J'aurais souhaité savoir si quelqu'un pouvait m'aider.Je suis en master 1 Finance et  Mercredi matin le 2 Avril, j'ai un controle sur VBA. L'o Vba Excel: rechercher une valeur à partir d'une textbox [ par biloute91 ] Bonjour,je souhaite rechercher une valeur inscrite dans une TextBox , dans une plage de données située dans une feuille du classeur et pouvoir ainsi d


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales