Un bug de la nouvelle fonction FILTRE?

Bonjour à tous,
Je compte utiliser la fonction récente FILTRE qui semble parfaite pour moi car elle permet le dynamique tout en maintenant l’esthétique de mes cellules.
Sur un onglet qui va accueillir la zone filtrée j’installe une valeur cible en G1 et je la place comme condition d’égalité FILTRE($ESTIMATION.A4:Q547;$ESTIMATION.G4:G547=G1;" ").
Cela fonctionne : j’ai bien mes 10 lignes qui représentent les 10 fois ou cette valeur est présente dans mon autre onglet $ESTIMATION.

Par contre quand je change de valeur en G1 qui change le nombre d’occurrence présentes dans $ESTIMATION, j’ai 2 cas de figures :

  • soit il y en a moins et il va mettre des #ND sur toutes les lignes en nombre de différence d’occurrence de la valeur
  • soit il ne va pas ajouter de lignes complémentaires et je n’aurais donc pas la liste totale d’occurrence.

Une idée? un bug ? faire autrement ?
djo

Il s’agit d’un problème général avec les formules matricielles.
Tu dois les réinitialiser à chaque modification.
Le code python suivant simplifie le tout:

from com.sun.star.beans import PropertyValue as pv

def resize_FormulaArrays(*_):
    doc = XSCRIPTCONTEXT.getDocument()
    frame = doc.CurrentController.Frame
    disp = XSCRIPTCONTEXT.ctx.ServiceManager.createInstance("com.sun.star.frame.DispatchHelper")
    sheet = doc.CurrentController.ActiveSheet
    ranges = sheet.queryContentCells(16) #all Formula[ranges]
    for single in ranges:
        if (formula:=single.ArrayFormula): # is there a ArrayFormula?        
            single.clearContents(16) # clear
            arg = pv( Name="ToPoint", Value= single[0,0].AbsoluteName)
            disp.executeDispatch(frame, ".uno:GoToCell", "", 0, (arg,))
            arg = pv( Name="Formula", Value = formula[1:-1] )
            disp.executeDispatch(frame, ".uno:InsertMatrix", "", 0, (arg,))