Oui merci, remarque judicieuse. Mais je me disais que ce serait une bonne occasion de me mettre aux macros, et en plus l'utilisateur veut des cases à cocher. Et je ne pense pas qu'on puisse faire un formatage conditionnel à partir d'un case à cocher sans macro (du moins j'ai pas trouvé).
Nicole de Bordeaux


c c a écrit :
Bonjour,

Juste une remarque, pourquoi faire une macro pour colorer en rouge une ligne en 
fonction de la valeur d'une cellule ? Le formatage conditionnel est super pour 
cela.

On pose le format conditionnel sur la première ligne ,par exemple :
la formule est $b1=1 et on applique un style avec du rouge puis on déploie ce 
formatage sur toutes les lignes

Claude
To: users@fr.openoffice.org
From: ni...@free.fr
Date: Mon, 26 Apr 2010 14:55:20 +0200
Subject: [users-fr] OOo Basic sous Calc : je débutte et je m'énerve

Bonjour,
Il y a des moments où on se dit qu'il faut vraiment être militant pour s'entêter avec OOo. 3 jours passés à manger le manuel officiel, quelques tutos basiques qui dates du siècle dernier et la référence API (complètement incompréhensible) et je n'arrive tjrs pas à faire un truc simple. Bon d'accord, je ne suis pas une kador de la programmation. Alors si une bonne âme voulait bien me mettre sur la bonne voie.

Au final mon projet doit être ça : dans un bête tableau genre base de données, il y a une case à cocher au début de chaque ligne. Quand l'utilisateur coche une case, la valeur "1" doit s'inscrire dans la cellule voisine à droite et le texte de toute la ligne concernée doit se mettre en rouge.

J'ai donc commencé à faire la partie macro, que pour le moment je lance "à la main". Je n'ai pas encore trouvé comment détecter la position de la ligne active en fonction de la case à cocher, mais j'ai trouvé pour la cellule encourt. Ça donne ça, qui évidement ne fonctionne pas :

Option Explicit
Sub Main
Dim Docum As Object
Dim Feuille As Object
Dim CelSel As Object
Dim TextFormat As Object
Docum = createUnoService("com.sun.star.sheet.SpreadsheetDocument")
TextFormat = createUnoService("com.sun.star.style.CharacterProperties")
Docum = StarDesktop.CurrentComponent
TextFormat = StarDesktop.CurrentComponent
Feuille = Docum.Sheets.getByName("devis")
CelSel = ThisComponent.getCurrentSelection
CelSel.String = "1"
CelSel.TextFormat.CharColor = RGB(255,0,0)
End Sub

C'est ok jusqu'à l'avant dernière ligne et là j'ai le message "Propriété ou Méthode non trouvé : TextFormat". [Grrrr]

Nicole de Bordeaux.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@fr.openoffice.org
For additional commands, e-mail: users-h...@fr.openoffice.org

_________________________________________________________________
Consultez vos emails Orange, Gmail, Yahoo!, Free ... directement depuis HOTMAIL 
!
http://www.windowslive.fr/hotmail/agregation/


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@fr.openoffice.org
For additional commands, e-mail: users-h...@fr.openoffice.org

Répondre à