Le 24/06/2015 18:53, Michel Blanchard a écrit :
Bonjour,
Malgré pas mal de recherches dans les forums ou tutoriels divers, je
ne trouve pas une solution simple pour formater *par macro basic*
une seule colonne mais toute la colonne.
L'objectif est de mettre une couleur de fond et une police pour
toute une colonne.
Merci par avance de votre aide.
Michel B.
Bonsoir,
Ce n'est pas possible mais, avec un macro enregistrée telle que celle
ci-dessous, tu peux sélectionner le nombre de cellules souhaitées en
modifiant la ligne documentée. Sur cette ligne 700 cellules ont été
choisies ; il suffit de modifier ce nombre en conséquence.
Bien sûr, toute la colonne n'est pas sélectionnée, mais c'est tout
comme !
Les choix de caractères, d'alignement et de remplissage sont, bien
entendu, à ton gré.
Cordialement
_____________________________________________________
REM ***** BASIC ****
sub MASFormatColonne
rem
----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem
----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem
----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$A$1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())
rem
----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "$A$1:$A$700" /rem, remplacer le nombre 700 par
celui souhaité/
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())
rem
----------------------------------------------------------------------
dim args3(2) as new com.sun.star.beans.PropertyValue
args3(0).Name = "FontHeight.Height"
args3(0).Value = 12
args3(1).Name = "FontHeight.Prop"
args3(1).Value = 100
args3(2).Name = "FontHeight.Diff"
args3(2).Value = 0
dispatcher.executeDispatch(document, ".uno:FontHeight", "", 0, args3())
rem
----------------------------------------------------------------------
dim args4(0) as new com.sun.star.beans.PropertyValue
args4(0).Name = "Bold"
args4(0).Value = true
dispatcher.executeDispatch(document, ".uno:Bold", "", 0, args4())
rem
----------------------------------------------------------------------
dim args5(0) as new com.sun.star.beans.PropertyValue
args5(0).Name = "Italic"
args5(0).Value = false
dispatcher.executeDispatch(document, ".uno:Italic", "", 0, args5())
rem
----------------------------------------------------------------------
dim args6(0) as new com.sun.star.beans.PropertyValue
args6(0).Name = "Color"
args6(0).Value = 255
dispatcher.executeDispatch(document, ".uno:Color", "", 0, args6())
rem
----------------------------------------------------------------------
dim args7(0) as new com.sun.star.beans.PropertyValue
args7(0).Name = "HorizontalJustification"
args7(0).Value = com.sun.star.table.CellHoriJustify.CENTER
dispatcher.executeDispatch(document, ".uno:HorizontalJustification",
"", 0, args7())
rem
----------------------------------------------------------------------
dim args8(4) as new com.sun.star.beans.PropertyValue
args8(0).Name = "BackgroundPattern.Transparent"
args8(0).Value = false
args8(1).Name = "BackgroundPattern.BackColor"
args8(1).Value = 10092390
args8(2).Name = "BackgroundPattern.URL"
args8(2).Value = ""
args8(3).Name = "BackgroundPattern.Filtername"
args8(3).Value = ""
args8(4).Name = "BackgroundPattern.Position"
args8(4).Value = com.sun.star.style.GraphicLocation.NONE
dispatcher.executeDispatch(document, ".uno:BackgroundPattern", "", 0,
args8())
rem
----------------------------------------------------------------------
dim args9(0) as new com.sun.star.beans.PropertyValue
args9(0).Name = "ToPoint"
args9(0).Value = "$A$1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args9())
end sub