[Résolu] [Calc] Colorer des lignes selon une Date

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
calcul
Membre OOrganisé
Membre OOrganisé
Messages : 88
Inscription : 04 déc. 2018 11:06

[Résolu] [Calc] Colorer des lignes selon une Date

Message par calcul »

salutations,

J'ai un besoin très similaire à la macro du monsieur OOotremer971, mais je suis nouveau dans Basic, je ne peux pas adapter la macro à mon besoin, alors je viens vous demander s'il vous plaît aider .

J'ai une base de données dans libreoffice avec beaucoup de lignes et beaucoup de colonnes, je dois donc construire une macro pour colorer les colonnes "B", "C", "D" à "E", dans la même ligne que Trouver current Date of aujourd'hui, qui sera situé dans la colonne "M" .

mais je ne veux pas utiliser l'événement de feuille de calcul, je veux pouvoir appuyer sur un bouton quand je le veux, j'appuierai sur le bouton et la Macro colorera tous les intervalles des colonnes "B", "C", "D" en " Et "dans la même ligne que Trouver la Date actuelle du jour qui sera dans la colonne" M " .

La colonne "M" peut contenir plusieurs Dates of aujourd'hui. La macro doit donc rechercher toutes les Dates of aujourd'hui dans la colonne "M", puis colorier les plages de cellules des colonnes "B", "C", "D". "jusqu'à" E " dans la même ligne .

Merci d'avance pour votre aide à la construction de cette macro .

Vous trouverez ci-dessous un exemple de fichier sur la manière dont j'aimerais colorer les cellules .

câlins ami .
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par calcul le 16 août 2019 18:54, modifié 1 fois.
LibreOffice 5.4.4.2 et Windows 7
touvenant
Membre OOrganisé
Membre OOrganisé
Messages : 50
Inscription : 23 déc. 2012 18:42

Re: [Calc] Colorer des lignes selon une Date

Message par touvenant »

Bonsoir,

Code : Tout sélectionner

REM  *****  BASIC  *****

Sub Main

Dim Doc As Object
Dim Sheet As Object
Dim Cell As Object
Dim CellValue
Dim today

today = date(Now()) 'récupère la partie date de la date actuelle, qui est composée de la date et de l'heure
'MsgBox(today)


Doc = StarDesktop.CurrentComponent 'Attribue le document actif à l'objet "Doc"
Sheet = Doc.Sheets(0) 'Attribue la feuille "Sheet(0)" de l'objet "Doc" à l'objet "Sheet" ; la numérotation commence à 0 donc 0 pour la première feuille

'Compter le nombre de lignes
'Count = 'je ne sais pas faire ça

for i= 0 to 10 'ici représente 11 lignes, 10 peut être remplacé par Count en récupérant le nombre de lignes utiles de la feuille
	Cell = Sheet.getCellByPosition(3,i) 'Attribue la cellule (3,i) de la feuille représentée par l'objet "Sheet" à l'objet "Cell" ; la numérotation commence à 0 donc (3,i) représente (D,1)...(D,11)
	CellValue = Cell.Value 'Value est une propriété de l'objet "Cell", on attribue la valeur de cette propriété à la variable "CellValue"
	if CellValue = today then 'On effectue la comparaison de la date courante avec le contenu de la cellule
		for j = 1 to 4 '...donc B à E
			Cell = Sheet.getCellByPosition(j,i)
			Cell.CellBackColor = RGB(255, 0, 0) 'colore la cellule en rouge
		next j
	endif
next i


End Sub
LibreOffice 7.4.6.2 x64
Windows10 Pro v10.0.19044
calcul
Membre OOrganisé
Membre OOrganisé
Messages : 88
Inscription : 04 déc. 2018 11:06

[Résolu] [Calc] Colorer des lignes selon une Date

Message par calcul »

sr. touvenant , a fonctionné parfaitement . :bravo: :bravo:

exactement ce que je cherchais , merci beaucoup mon ami . :super:

câlins . :)
LibreOffice 5.4.4.2 et Windows 7