Utilisation du contrôle spreadsheet owc 11

Parazite

XLDnaute Nouveau
Bonjour,

j'ai intégré dans un UserForm un contrôle spreadsheet owc 11. L'idée est de récupérer des contenus de cellules provenant d'une page de calcul excel classique ou des valeurs provenant de boutons d'un autre UserForm... Jusque là tout va bien et tout fonctionne...

Par contre j'ai beaucoup de mal en ce qui concerne la "mise en page" et la présentation du spreadsheet (Je précise que je n'ai pas beaucoup d'expérience en vba). J'ai deux questions:

QUESTION 1:

J'ai réussi à modifier la taille des cellules, la police, la couleur du texte en utilisant ce code:

Code:
Private Sub userForm_Initialize()
Me.Spreadsheet1.Cells(2, 2).ColumnWidth = 30
Me.Spreadsheet1.Cells(2, 2).RowHeight = 25

With Me.Spreadsheet1.Cells.Font
.Bold = True
.Color = "blue"
.Italic = True
.Name = "Arial"
.Size = 25
End With
End Sub

Code:

Par contre, lorsque je change la couleur de fond d'une cellule du spreadsheet (click droit sur la cellule - Commandes et options) la modification n'est pas enregistrée et lors d'un affichage ultérieur du UserForm les cellules sont a nouveau blanches...
Et au niveau du code je ne trouve pas comment modifier les fonds...
Quelqu'un a-t-il une idée?

QUESTION 2:

Comment gérer dynamiquement le positionnement et la taille du spreadsheet sur mon UserForm, c'est à dire comment adapter la taille du spreadsheet à la taille de l'UserForm? (sachant que l'utilisateur peut modifier la taille de l'USF en "attrapant" un coin de la fenêtre).

Merci d'avance pour vos réponses ! ;)
 

Gael

XLDnaute Barbatruc
Re : Utilisation du contrôle spreadsheet owc 11

Bonjour Parazite,

Pour la première question, il faut utiliser "interior.colorindex". Tu peux le faire de deux façons:

Code:
With Me.Spreadsheet1.Cells
.Font.Bold = True
.Font.Color = "blue"
.Font.Italic = True
.Font.Name = "Arial"
.Font.Size = 25
.Interior.ColorIndex = 50
End With

Ou en conservant ton code:

Code:
With Me.Spreadsheet1.Cells.Font
.Bold = True
.Color = "blue"
.Italic = True
.Name = "Arial"
.Size = 25
End With
 
Me.Spreadsheet1.Cells.Interior.ColorIndex = 50

Tu peux aussi mettre ...interior.color="red"

Pas compris la 2ème question, l'utilisateur peut modifier la taille su spreadsheet à l'intérieur de l'USF mais pas l'USF lui-même:confused:

@+

Gael
 

Parazite

XLDnaute Nouveau
Re : Utilisation du contrôle spreadsheet owc 11

Bonsoir Gael,

Merci beaucoup pour ta réponse, c'est la ligne de code qu'il me manquait ^^

Pour la 2ème question, je reformule plus clairement (enfin j'essaye...) :

en fait, l'utilisateur peut modifier la taille de l'UserForm en plaçant sa souris dans un des coins de la fenêtre, une double flêche apparait et il n'a plus qu'a agrandir ou rétrécir l'UserForm (exactement comme n'importe quelle fenêtre windows par exemple).

Et ce que je souhaiterais c'est que la taille du spreadsheet s'adapte à la taille de l'UserForm.
Parce que pour le moment lorsque j'affiche mon UserForm le spreadsheet rempli toute la page, mais lorsque j'agrandis l'UserForm il reste "fixe" (il conserve sa taille d'origine) et ne rempli donc plus tout l'USF...

Voilà, j'espère que j'ai été plus clair et que quelqu'un aura une idée.
 

Discussions similaires

Réponses
0
Affichages
186
Réponses
46
Affichages
1 K
Réponses
2
Affichages
886
Réponses
3
Affichages
251

Statistiques des forums

Discussions
312 629
Messages
2 090 321
Membres
104 491
dernier inscrit
anthony2812