La modération vous a écrit: Balise [Calc] ajoutée suite à déplacement du sujet et titre raccourci.
Pour faciliter la lecture, code mis entre balises [ code] par le modérateur.
Bonjour, je suis nouveau sur le forum et je vous l'avoue, je suis totalement novice en matière de programmation.
J'ai construit une petite feuille de calcul qui me permet de déterminer mois après mois les jours de travail de mes collègues et moi-même en sachant que le nombre de lignes de ce tableau est susceptible de changer à la hausse ou à la baisse.
Je souhaitais parfaire ma feuille de calcul en y ajoutant un bouton "effacer" qui remettrait à zéro les données du tableau par sélection des données suivi d'un clic à la souris sur le bouton afin d'exécuter l'action.
A l'aide d'une formule que j'ai découverte sur un sujet aujourd'hui verrouillé de ce forum, j'y suis parvenu partiellement.
En effet, la feuille de calcul comporte à la fois du contenu, des annotations et des couleurs d'arrière plan.
De surcroît, la zone à effacer est susceptible d'évoluer à la hausse ou à la baisse en fonction du nombre de collègues présents.
Je parviens à effacer le contenu et les annotations de la zone sélectionnée manuellement à la souris mais pas les couleurs de l'arrière plan.
Toutefois, lorsque j'y parviens cela se fait au prix d'un formatage total des cellules que je souhaiterais éviter. (hardattr)
Je souhaiterais simplement compléter la formule en y a joutant une instruction qui efface également mais seulement les couleurs de l'arrière plan des cellules sélectionnées si cela est possible bien entendu.
Pouvez vous m'aider à compléter la macro s'il vous plait ?
En vous remerciant par avance,
Gustav9999
Code : Tout sélectionner
Sub EffaceSelection
sel = ThisComponent.CurrentSelection
sel.clearcontents(com.sun.star.sheet.CellFlags.STRING +_
com.sun.star.sheet.CellFlags.VALUE +_
com.sun.star.sheet.CellFlags.DATETIME +_
com.sun.star.sheet.CellFlags.FORMULA)
End Sub