OVH Cloud OVH Cloud

Sélection de plage par programmation

3 réponses
Avatar
imej-clavier
Bonjour,
Quelqu'un peut-il m'aider à résoudre mon problème ?
J'ai fait les deux premières lignes d'un damier. Je souhaiterais les
sélectionner par programmation.
' Ma cellule constitue la cellule à partir de laquelle créer le damier.
MaCellule = InputBox("Choisissez une cellule de départ ")
Set MaCelluleA=ActiveCell.Offset(0,1)
AAA=MaCelluleA.Address
' compteur est une variable représentant le nombre total de lignes et de
colonnes
Set MaCelluleB=ActiveCell.Offset(1,compteur)
BBB=MaCelluleB.Address
Set MaPlage=Range("BBB:CCC")
MaPlage.Select
Ce que je ne comprend pas, c'est que si l'on espionne les valeurs des
variables BBB et CCC on trouve les cellules adéquates (1ère et dernière
cellule de
la plage). Par contre, on ne peut pas sélectionner la plage.
Mais si l'on remplace les variables BBB et CCC par les adresses adéquates :
A1 ou F5..., on arrive à sélectionner la plage.
Quelqu'un peut-il m'aider à résoudre ce problème?
D'avance merci,
Jean-michel

3 réponses

Avatar
AV
Ta variable "CCC" n'est pas définie !
Erreur de frappe pour "BBB" ?
Si oui ça pourrait faire simplement :

Range(AAA & ":" & BBB).Select

AV
Avatar
Bonjour,
un damier standard ;-))) posséde 64 cases non ??

Sub Macro3()
Sheets.Add
macellule = InputBox("Choisissez une cellule de départ ")
Set damier = Range(macellule)
damier.Offset(0, 0).Resize(8, 8).Select
For Each cell In Selection
If cell.Row Mod 2 = 0 Then
If cell.Column Mod (2) = 0 Then
cell.Interior.Color = vbBlack
Else
cell.Interior.Color = vbWhite
End If
Else
If cell.Column Mod (2) = 0 Then
cell.Interior.Color = vbWhite
Else
cell.Interior.Color = vbBlack
End If
End If
Next
End Sub

-----Message d'origine-----
Bonjour,
Quelqu'un peut-il m'aider à résoudre mon problème ?
J'ai fait les deux premières lignes d'un damier. Je
souhaiterais les

sélectionner par programmation.
' Ma cellule constitue la cellule à partir de laquelle
créer le damier.

MaCellule = InputBox("Choisissez une cellule de départ ")
Set MaCelluleA¬tiveCell.Offset(0,1)
AAA=MaCelluleA.Address
' compteur est une variable représentant le nombre total
de lignes et de

colonnes
Set MaCelluleB¬tiveCell.Offset(1,compteur)
BBB=MaCelluleB.Address
Set MaPlage=Range("BBB:CCC")
MaPlage.Select
Ce que je ne comprend pas, c'est que si l'on espionne
les valeurs des

variables BBB et CCC on trouve les cellules adéquates
(1ère et dernière

cellule de
la plage). Par contre, on ne peut pas sélectionner la
plage.

Mais si l'on remplace les variables BBB et CCC par les
adresses adéquates :

A1 ou F5..., on arrive à sélectionner la plage.
Quelqu'un peut-il m'aider à résoudre ce problème?
D'avance merci,
Jean-michel




.



Avatar
AV
Et même que pour le damier :
Sélection de la plage > MFC > La formule est :
=MOD(COLONNE();2)=MOD(LIGNE();2)
motif : Noir


AV