[Calc] (solution et cause d'un) Bug de selection automatique de tableau dans la fonction trier

Bonjour,

Je rappelle d'abord mon message originel :

############
Menu : Données > Trier.

Il s'agit d'un bug dans la sélection automatique du tableau à trier.
Il suffit normalement d'être positionné dans une cellule du tableau,
et le logiciel sélectionne automatiquement le tableau où faire le
tri en se fondant sur les lignes et colonnes vides qui l'entourent.

Cela ne fonctionne qu'à moitié dans LibreOffice. Le tableau est bien
sélectionné automatiquement entre ses limites haute et basse, mais
pas entre ses limites droite et gauche. Les lignes sont
sélectionnées en entier.
###########

La meilleure nouvelle : dans mon classeur le plus important la fonction
de tri fonctionne normalement. Pour les autres, c'est juste une question
de temps.

Voilà ce que j'ai trouvé.

La sélection automatique du tableau est influencée par le contenu des
cellules adjacentes _ET_ par le formatage des bordures de ces cellules
adjacentes.

Donc même si les cellules adjacentes sont vides de données, si elles
sont formatées avec des bordures le soft ne voit pas les limites du
tableau.

La sélection automatique dans OOo n'est influencée par aucun formatage.

Le curieux : seulement dans le sens horizontal et pas dans le sens
vertical... Ça fait penser effectivement à un bout de fonction (dans le
code) qui se serait perdu en route.

Mais il y a une bonne nouvelle !

On peut quand même retrouver la présentation que l'on avant précédement
tout en gardant fonctionnel la sélection automatique. Aha !

Dans OOo il fallait colorer séparément les cellules et les bordures pour
avoir une plage de cellules de couleur unie. Je viens de découvrir que
dans LibreOffice quand on colore un arrière-plan de cellule, le soft
colore aussi la bordure de cette cellule. On obtient donc des plages
avec un arrière-plan uni sans avoir à mettre des bordures colorées.
CQFD.

Le travail de mise en page en est même dorénavant simplifié à mon avis.

Ouf ! :slight_smile:

Mais... : on ne peut pas leur mettre de bordures, à ces cellules
adjacentes ! Alors... c'est donc quand même un bug :

Bonjour Serge, bonjour Cédric

Je vais tenter de résumer le comportement.
Calc : Dans 2 tableaux d'une feuille séparés par une colonne vide.
Si des cellules de la colonne vide contiennent une bordure, LibreOffice considère qu'il s'agit du même tableau (il suffit en effet de faire CTRL*) et considère la colonne non vide

En revanche, après tests, je confirme que la couleur d'arrière plan ou les formatages de cellules n'ont pas d'influence.

Les bordures ayant été totalement reprises sous LibreOffice, cela ne m'étonne pas du comportement différent d'Ooo.
Cédric, je suis à ta disposition pour d'autres informations !

Marie jo

Bonjour Marie-Jo, Serge,

Les bordures ayant été totalement reprises sous LibreOffice, cela ne
m'étonne pas du comportement différent d'Ooo.
Cédric, je suis à ta disposition pour d'autres informations !

Je confirme le bug ici sur une compilation de la branche master. Je vais
essayer de trouver un peu de temps pour regarder ca plus en detail assez
rapidement... sans pouvoir promettre de delais.

A bientot,

Le jeudi 27 janvier 2011 à 16:20
        Marie jo Ooo
a écrit pour nous :

  Bonjour Serge, bonjour Cédric

Bonjour Marie-Jo

Je vais tenter de résumer le comportement.
Calc : Dans 2 tableaux d'une feuille séparés par une colonne vide.
Si des cellules de la colonne vide contiennent une bordure,
LibreOffice considère qu'il s'agit du même tableau

Plus exactement il considère que les cellules de cette colonne ne sont
pas vides de données du fait de la présence de bordures. C'est ça qui
est le bug.

Du coup il ne trouve pas de limite horizontale au tableau.

Ce qui est curieux (je me répète...) et confirme l'idée d'un bug c'est
que dans le cas des lignes (limites haute et basse du tableau) tout
fonctionne parfaitement : la présence de bordures dans ces cellules
n'influence pas la sélection automatique de tableau (je viens de
revérifier).

Je pense que cela vaudrait la peine de faire remonter aux développeurs
cette "dualité" de comportement pour leur faciliter le traquage du pb.

Selon toute probabilité - mais bon, je ne suis pas développeur - il y a
qq part une portion de code qui définit ce qu'est une cellule vide qui
est mal foutue dans une direction de détection alors qu'elle va bien
dans l'autre.

(il suffit en
effet de faire CTRL*) et considère la colonne non vide

En revanche, après tests, je confirme que la couleur d'arrière plan
ou les formatages de cellules n'ont pas d'influence.

Les bordures ayant été totalement reprises sous LibreOffice, cela ne
m'étonne pas du comportement différent d'Ooo.

Moins de la moitié de temps pour la mise en forme d'une plage de cellule
de couleur unie ! L'idée d'inclure dorénavant dans la coloration de
l'arrière-plan d'une cellule ses bordures est donc très bonne et (me)
simplifie considérablement le travail de mise en forme.

Cordialement,
Serge

Apres un petit coup d'oeil au code de calc et du Ctrl+* j'ai decouvert
que ca n'a pas l'air d'un bug mais d'un comportement delibere. Cela
permet notamment de selectionner tout un tableau losrqu'on lui applique
des bordures et qu'il y a des "trous" dedans.

Cette fonctionnalite ne me semble pas stupide... et n'a aucun rapport
avec mes modifs des bordures :wink:

A bientot,

Bonjour,

En préambule : pardonnez-moi pour les doublons, tests etc. mes messages
a&pparaissent finalement avec quasi 24 heures de retard.

Le vendredi 28 janvier 2011 à 11:45
        Cedric Bosdonnat
a écrit pour nous :

Apres un petit coup d'oeil au code de calc et du Ctrl+* j'ai
decouvert que ca n'a pas l'air d'un bug mais d'un comportement
delibere. Cela permet notamment de selectionner tout un tableau
losrqu'on lui applique des bordures et qu'il y a des "trous" dedans.

1. Bordés ou pas, le tableau !
Je viens de vérifier les deux cas de figure dans OOo et LOo. Il arrivera
toujours avec des tableaux à "trous" que la sélection automatique ne se
fasse pas.

C'est logique car une cellule entièrement entourée de cellules vides est
par définition une zone à sélectionner. Donc chaque fois qu'on est placé
au centre d'une zone de 9 cellules vides, la sélection automatique du
tableau est leurrée.

2. Ça n'explique toujours pas la distorsion entre le comportement
horizontal et vertical vis-à-vis des bordures.

Pour ceux que ça intéresse, ma parade contre les "trous" :

- ne pas me placer dans une zone vide de données (en fait au centre
d'une zone d'au moins 9 cellules vides). Ça baigne pour la plupart de
mes tableaux qui sont quasi totalement peupléés de données.

- pour les autres rajouter un signe non visible dans qq cellules des
grandes (>9 cellules contigues) zones vides ; une espace, ou pour les
colonnes de nombres un zéro que j'ai rendu le plus souvent invisible par
formatage conditionnel pour la lisibilité des tableaux.

- utiliser la sélection manuelle par le navigateur ou par un lien en
nommant mon tableau comme suggéré par Marc Lanchas.

Cordialement
Serge

Certains de tes messages arrivent en modération et ne sont publiés que
quand je l'autorise ce qui rajoute un délai.
Pour éviter ça il faut faire attention de bien envoyer tes messages avec
celle de tes adresses qui est abonnée à la liste.

Bonne journée
JBF

Bonjour,

Le samedi 29 janvier 2011 à 13:43
        Jean-Baptiste Faure
a écrit pour nous :

Certains de tes messages arrivent en modération et ne sont publiés
que quand je l'autorise ce qui rajoute un délai.
Pour éviter ça il faut faire attention de bien envoyer tes messages
avec celle de tes adresses qui est abonnée à la liste.

Oui, j'ai eu effectivement fait une erreur, mais maintenant, avec la
bonne adresse, c'est toujours pareil... et pas seulement sur cette liste
:frowning:

Je pense que c'est le smtp Gmail qui m...e !
Je vais réessayer avec Nerim...

Serge