Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Manipulation d'objet Range dans un contrôle spreadsheet

4 réponses
Avatar
lolo
Bonjour =E0 toutes et =E0 tous,

J'ai de gros soucis pour manipuler par le biais du code de=20
mon programme les objets Range d'un contr=F4le spreadsheet=20
(biblioth=E8que OWC10) que j'ai cr=E9=E9 dans un formulaire, .=20
Je voudrais pourtant faire des choses simples comme=20
s=E9lectionner une cellule et lui modifier sa couleur de=20
fond. J'ai essay=E9 des instructions du type :

Myuserform.myspreadsheet.worksheets(1).activate
Myuserform.myspreadsheet.worksheets(1).Range("A1").select
Selection.interior.colorindex =3D 19

Ces instructions sont bien ex=E9cut=E9es mais c'est la cellule=20
A1 de mon classeur actif (et non du contr=F4le spreadsheet)=20
qui en subit les effets... le contr=F4le spreadsheet, lui,=20
ne bouge pas !

Merci d'avance =E0 tous ceux qui pourraient me donner des=20
pistes pour r=E9soudre ce probl=E8me.

lolo

4 réponses

Avatar
Michel Pierron
Salut lolo;
With Myuserform.myspreadsheet
.Sheets(1).Activate
.Range("A1").Interior.ColorIndex = 19
End With
MP

"lolo" a écrit dans le message de
news:082a01c3adcb$e2244520$
Bonjour à toutes et à tous,

J'ai de gros soucis pour manipuler par le biais du code de
mon programme les objets Range d'un contrôle spreadsheet
(bibliothèque OWC10) que j'ai créé dans un formulaire, .
Je voudrais pourtant faire des choses simples comme
sélectionner une cellule et lui modifier sa couleur de
fond. J'ai essayé des instructions du type :

Myuserform.myspreadsheet.worksheets(1).activate
Myuserform.myspreadsheet.worksheets(1).Range("A1").select
Selection.interior.colorindex = 19

Ces instructions sont bien exécutées mais c'est la cellule
A1 de mon classeur actif (et non du contrôle spreadsheet)
qui en subit les effets... le contrôle spreadsheet, lui,
ne bouge pas !

Merci d'avance à tous ceux qui pourraient me donner des
pistes pour résoudre ce problème.

lolo
Avatar
Denis Michon
Bonjour Lolo,


Voici 2 façons de mettre de la couleur dans une cellule de l'objet SpreadSheet

Attention, le contrôle Spreadsheet à ses propres propriétés et méthodes, et il se peut que cela soit différent de
l'objet feuille de calcul que tu connais.

Exemple : la propriété ColorIndex n'existe pas ... il faut passer par la propriété Color ... et la définir à l'aide de
la fonction RGB(), qui a 3 paramètres qui peuvent prendre la valeur entre 0 et 255.


'----------------------------
Private Sub CommandButton1_Click()

With Me.Spreadsheet1
With .Cells(5, 6)
.Interior.Color = RGB(125, 125, 125)
End With

With .ActiveSheet.Range("A1")
.Interior.Color = RGB(125, 125, 125)
End With
End With

End Sub
'----------------------------


Salutations!



"lolo" a écrit dans le message de news:082a01c3adcb$e2244520$
Bonjour à toutes et à tous,

J'ai de gros soucis pour manipuler par le biais du code de
mon programme les objets Range d'un contrôle spreadsheet
(bibliothèque OWC10) que j'ai créé dans un formulaire, .
Je voudrais pourtant faire des choses simples comme
sélectionner une cellule et lui modifier sa couleur de
fond. J'ai essayé des instructions du type :

Myuserform.myspreadsheet.worksheets(1).activate
Myuserform.myspreadsheet.worksheets(1).Range("A1").select
Selection.interior.colorindex = 19

Ces instructions sont bien exécutées mais c'est la cellule
A1 de mon classeur actif (et non du contrôle spreadsheet)
qui en subit les effets... le contrôle spreadsheet, lui,
ne bouge pas !

Merci d'avance à tous ceux qui pourraient me donner des
pistes pour résoudre ce problème.

lolo
Avatar
lolo
Merci MP, ça marche !
-----Message d'origine-----
Salut lolo;
With Myuserform.myspreadsheet
.Sheets(1).Activate
.Range("A1").Interior.ColorIndex = 19
End With
MP

"lolo" a écrit dans
le message de

news:082a01c3adcb$e2244520$
Bonjour à toutes et à tous,

J'ai de gros soucis pour manipuler par le biais du code de
mon programme les objets Range d'un contrôle spreadsheet
(bibliothèque OWC10) que j'ai créé dans un formulaire, .
Je voudrais pourtant faire des choses simples comme
sélectionner une cellule et lui modifier sa couleur de
fond. J'ai essayé des instructions du type :

Myuserform.myspreadsheet.worksheets(1).activate
Myuserform.myspreadsheet.worksheets(1).Range("A1").select
Selection.interior.colorindex = 19

Ces instructions sont bien exécutées mais c'est la cellule
A1 de mon classeur actif (et non du contrôle spreadsheet)
qui en subit les effets... le contrôle spreadsheet, lui,
ne bouge pas !

Merci d'avance à tous ceux qui pourraient me donner des
pistes pour résoudre ce problème.

lolo


.



Avatar
Denis Michon
Bonjour Michel,

Es-tu bien sûr de ce que tu avances ?


L'objet "SpreadSheet" et "Sheet" sont très différents !!!

;-))

Salutations!


"Michel Pierron" a écrit dans le message de news:
Salut lolo;
With Myuserform.myspreadsheet
.Sheets(1).Activate
.Range("A1").Interior.ColorIndex = 19
End With
MP

"lolo" a écrit dans le message de
news:082a01c3adcb$e2244520$
Bonjour à toutes et à tous,

J'ai de gros soucis pour manipuler par le biais du code de
mon programme les objets Range d'un contrôle spreadsheet
(bibliothèque OWC10) que j'ai créé dans un formulaire, .
Je voudrais pourtant faire des choses simples comme
sélectionner une cellule et lui modifier sa couleur de
fond. J'ai essayé des instructions du type :

Myuserform.myspreadsheet.worksheets(1).activate
Myuserform.myspreadsheet.worksheets(1).Range("A1").select
Selection.interior.colorindex = 19

Ces instructions sont bien exécutées mais c'est la cellule
A1 de mon classeur actif (et non du contrôle spreadsheet)
qui en subit les effets... le contrôle spreadsheet, lui,
ne bouge pas !

Merci d'avance à tous ceux qui pourraient me donner des
pistes pour résoudre ce problème.

lolo