La modération vous a écrit: Merci de respecter la syntaxe des balises [Calc] et non [CALC].
La balise [MACRO VBA] n'appartient pas à la liste des balises du forum et le terme Macro est inutile = correction par la modération.
Bonjour,
j'ai une plage de cellules nommée, avec des cellules NON contigües
Je dois affecter une valeur et une couleur d'arrière plan à chaque cellule de cette plage.
Dans la macro, le nommage fonctionne.
Est-il possible d'affecter une valeur et une couleur d'arrière plan à toutes les cellules de la plage en une instruction ?
Sinon, si je dois faire une boucle, comment l'écrire ? (ce que j'ai écrit ne fonctionne pas : erreur PROPRIETE OU METHODE NON TROUVEE : GETROWS
Merci pour votre aide
Option Explicit
sub nommerAireDeJeu()
Dim monDocument As Object
Dim zoneDeNoms As Object
Dim nomDeLaPlageDeJeu As String
Dim coordonneesDeLaPlageDeJeu As String
Dim oCellAdress As New com.sun.star.table.CellAddress
monDocument = Thiscomponent
coordonneesDeLaPlageDeJeu = "Feuille1.$B$5:$C$7~Feuille1.$D$4:$H$8"
nomDeLaPlageDeJeu = "plateauDeJeu"
zoneDeNoms = monDocument.NamedRanges
If zoneDeNoms.hasByName(nomDeLaPlageDeJeu) then
zoneDeNoms.removeByName(nomDeLaPlageDeJeu) 'alors on la supprime
end If
zoneDeNoms.addNewByName(nomDeLaPlageDeJeu, coordonneesDeLaPlageDeJeu ,oCellAdress,0)'
Dim monPlateauDeJeu as Object
monPlateauDeJeu = zoneDeNoms.getByName(nomDeLaPlageDeJeu)
'NE FONCTIONNE PAS monPlateauDeJeu.BackColor = rgb(255,0,0)
Dim i as long, j as long
For i = 0 To monPlateauDeJeu.getRows().getCount()-1 'ERREUR GETROWS
For j = 0 To monPlateauDeJeu.getColumns().getCount()-1
maPlageDeJeu.getCellByPosition(j, i).setValue(4)
Next j
Next i
End Sub