FAQ LibreOffice et Apache OpenOfficeConsultez toutes les FAQ
Nombre d'auteurs : 10, nombre de questions : 359, dernière mise à jour : 15 juillet 2017 Ajouter une question
Bienvenue sur la FAQ, elle a été réalisée pour répondre aux questions concernant les suites bureautiques Apache OpenOffice (AOO) et LibreOffice (LibO).
Si vous souhaitez participer pour l'améliorer, pour proposer vos contributions ou si vous constatez des erreurs dans cette page, n'hésitez-pas !!! Participez.
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | Sub MiseEnFormeCellule Dim oDoc As Object , Feuille As Object Dim Cellule As Object oDoc = ThisComponent Feuille = oDoc.getSheets.getByName("Feuille1") Cellule = Feuille.getCellRangeByName("A5") With Cellule .setString( " mon texte " ) 'insére du texte dans la cellule .CellBackColor = RGB(0,0,0) 'indique la couleur de fond .paraAdjust = com.sun.star.style.ParagraphAdjust.CENTER 'alignement centré .RotateAngle = 9000 'Rotation 9000 = 90° .CharColor = RGB(255,0,0) 'couleur des caractères .CharHeight = 16 'Taille catactères .CharWeight = com.sun.star.awt.FontWeight.BOLD 'gras .CharPosture = com.sun.star.awt.FontSlant.ITALIC 'italique .CharFontName = "Arial" 'Font .CharUnderline = com.sun.star.awt.FontUnderline.DOUBLE 'souligné double End With 'Ajuste la hauteur de la 5eme ligne au contenu des cellules. Feuille.Rows(4).OptimalHeight = True End Sub |
De manière directe :
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | Sub MiseEnFormeCelluleParDefaut Dim oDoc As Object , Feuille As Object Dim Cellule As Object oDoc = ThisComponent Feuille = oDoc.getSheets.getByName("Feuille1") Cellule = Feuille.getCellRangeByName("A5") With Cellule .String = "" .CellBackColor = -1 .paraAdjust = "" .RotateAngle = 0 .CharColor = -1 .CharHeight = 10 .CharWeight = 100 .CharPosture = 0 .CharFontName = "Arial" .CharUnderline = 0 End With End Sub |
Ou plus proprement :
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | Sub MiseEnFormeCelluleParDefaut Dim oDoc As Object , Feuille As Object Dim Cellule As Object oDoc = ThisComponent Feuille = oDoc.getSheets.getByName("Feuille1") Cellule = Feuille.getCellRangeByName("A5") With Cellule .setPropertyToDefault("String") .setPropertyToDefault("CellBackColor") .setPropertyToDefault("paraAdjust") .setPropertyToDefault("RotateAngle") .setPropertyToDefault("CharColor") .setPropertyToDefault("CharHeight") .setPropertyToDefault("CharWeight") .setPropertyToDefault("CharPosture") .setPropertyToDefault("CharWeight") .setPropertyToDefault("CharFontName") .setPropertyToDefault("CharUnderline") End With End Sub |
Cette fonction compte le nombre de cellules dans la plage B3:B10 dont la couleur de fond est identique à la couleur de fond de la cellule A1.
Code vb : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | '--- Compte le nombre de couleurs identiques à une cellule de base. --- ' CellBase est la cellule qui contient la couleur de référence. ' Définition de la plage à tester: ' ColDebut: Numero de la 1ere colonne dans la plage à contrôler ' ColFin: Numero de la derniere colonne dans la plage à contrôler ' LigDebut: Numero de la 1ere ligne dans la plage à contrôler ' LigFin: Numero de la derniere ligne dans la plage à contrôler Function NbCouleursCible(NomFeuille As String, CellBase As String, _ ColDebut As Integer, ColFin As Integer, LigDebut As Integer, _ LigFin As Integer) As Integer Dim MaCoul As Double Dim X As Integer, Y As Integer , Resultat As Integer Dim Ws As Object, Cellule As Object Ws = ThisComponent.Sheets(NomFeuille) ' Récupère la valeur de la couleur dans la cellule de base. MaCoul = Ws.getCellRangeByName(CellBase).CellBackColor NbCouleursCible = 0 For X = ColDebut - 1 To Colfin - 1 For Y = LigDebut - 1 To LigFin - 1 Cellule = Ws.getCellByposition( X , Y ) If Cellule.CellBackColor = MaCoul Then Resultat = Resultat + 1 Next Y Next X NbCouleursCible = Resultat End Function |
Code vb : | Sélectionner tout |
1 2 3 4 5 | Sub Test ' Compte le nombre de cellules dans la plage B3:B10 dont la ' couleur est identique à la cellule A1. MsgBox NbCouleursCible("Feuille1" ,"A1" ,2 ,2 ,3 ,10 ) End Sub |
Il est aussi possible d'insérer cette formule dans une cellule.
Code vb : | Sélectionner tout |
=NBCOULEURSCIBLE("Feuille1";"A1";2;2;3;10)
Proposer une nouvelle réponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour çaLes sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.