2 messages in org.openoffice.fr.progRe: [prog] macro pour filtre et extra...
FromSent OnAttachments
Alpha BetaMay 18, 2006 12:59 am 
Francois GattoMay 19, 2006 12:42 pm 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: [prog] macro pour filtre et extraction hors doublonActions...
From:Francois Gatto (oo@volcar.org)
Date:May 19, 2006 12:42:57 pm
List:org.openoffice.fr.prog

Bonsoir AB,

Voici une solution :

Sub filterWithoutDups() On Error Goto ErrorHandler

Dim Clas As Object Dim Feuil As Object Dim Zone As Object Dim aSortFields(0) As New com.sun.star.table.TableSortField Dim aSortDesc() As Variant Dim aDestAddr As New com.sun.star.table.CellAddress Dim aFilterFields(0) As new com.sun.star.sheet.TableFilterField

Clas = ThisComponent Feuil = Clas.CurrentController.ActiveSheet ' Pour ne definir qu'une portion 'Zone1 = Feuil.GetCellRangeByName("A1:A11") ' Pour selectionner toute une colonne Zone1 = Feuil.GetColumns().GetByName("A") Zone2 = Feuil.GetColumns().GetByName("G")

aFilterDesc = Zone2.createFilterDescriptor(True)

' Adresse de destination aDestAddr.Sheet = 0 ' Feuille aDestAddr.Column = 6 ' Colonne aDestAddr.Row = 0 ' Ligne

' Definitions pour le filtre ' colonne de filtre aFilterFields(0).Field = 0 ' toute cellule non vide aFilterFields(0).Operator =com.sun.star.sheet.FilterOperator.NOT_EMPTY

' Mise en place du filtre aFilterDesc.setFilterFields( aFilterFields() ) aFilterDesc.OutputPosition = aDestAddr ' Adresse de destination aFilterDesc.CopyOutputData = True ' Avec copie des donnees aFilterDesc.ContainsHeader = True ' Avec entete de colonne aFilterDesc.SkipDuplicates = True ' Sans doublon

' Application du filtre a partir des donnees en Zone1 Zone1.filter( aFilterDesc )

MsgBox( ":: Fin de traitement ::", 64, "Yeeesssss ! ;-)" ) Exit Sub

ErrorHandler: Msg = "Erreur " & Err & " en ligne " & Erl Msg = Msg & Chr( 10 ) & Error MsgBox( Msg, 16 ,"Erreur d'execution" ) End Sub

Alpha Beta a écrit :

Bonjour,

Je cherche à extraire d'une feuille Calc des données d'une colonne sur laquelle je souhaite faire un filtre et une extraction de données sur une autre feuille Calc et ce sans doublon.

J'ai trouvé la propriété Filter... mais pour l'utiliser c'est pas évident ....

Quelqu'un aurait-il une piste ?

Merci d'avance

Bonne chance.