OVH Cloud OVH Cloud

Bordure de cellule ?

1 réponse
Avatar
Gus
Dans un spreadsheet je veux que la bordure inferieure de=20
certaine cellule apparaisse en noir .
un exemple dans une userform1, je une spreadsheet1 et un=20
textbox1 . La valeur entree dans la textbox1 coorespond a=20
la ligne de cellule dont il dfaut faire apparaitre la=20
bordure.
Voici mon code :
Private Sub TextBox1_Change()
Spreadsheet1.ActiveSheet.Rows(TextBox1.Value + 1).Select
With Selection.Borders(xlEdgeBottom)
.LineStyle =3D xlContinuous
.Weight =3D xlHairline
.Color =3D RGB(0, 0, 0)
End With
End Sub

mais =E7a ne marche pas ? Aucune bordure n'apparait ?
pourriez vous m'=E9clairer ? merci.

1 réponse

Avatar
Denis Michon
Bonjour Gus,

A ) Commentaire :

Ou bien tu utilises le nom de l'objet "Feuille" que l'on retrouve en vba, ou bien tu prends le nom de l'onglet de la
feuille pour faire référence à celle-ci.

Si le nom de l'objet de la feuille est Feuil1 ou Spreadsheet1, la ligne de code est :

Feuil1.Rows(TextBox1.Value + 1).Select

Ou cette syntaxe en utilisant le nom de l'onglet de la feuille :

Worksheets("NomDeLaFeuille").Rows(TextBox1.Value + 1).Select


B ) Attention : Un textbox génère une chaîne de caractères, peu importe que cette chaîne soit composée de caractère
numérique ou alphanumérique. Il serait sage dans ton code que tu testes d'abord si l'usager entre dans le textbox des
caractères numériques ... sinon il est évident que la procédure va se planter !!!

'Est - ce numérique ?
If IsNumeric (Me.textbox1) = True then
'si la valeur du textbox est entre la ligne 1 et 65536
'C'est le nombre de lignes disponibles dans une feuille
if cdbl(me.textbox) > 0 and cdbl(me.textbox)<65536 then

'le reste de ton code ..

end if
End if




Salutations!






"Gus" a écrit dans le message de news:090601c3a382$8ec6b910$
Dans un spreadsheet je veux que la bordure inferieure de
certaine cellule apparaisse en noir .
un exemple dans une userform1, je une spreadsheet1 et un
textbox1 . La valeur entree dans la textbox1 coorespond a
la ligne de cellule dont il dfaut faire apparaitre la
bordure.
Voici mon code :
Private Sub TextBox1_Change()
Spreadsheet1.ActiveSheet.Rows(TextBox1.Value + 1).Select
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlHairline
.Color = RGB(0, 0, 0)
End With
End Sub

mais ça ne marche pas ? Aucune bordure n'apparait ?
pourriez vous m'éclairer ? merci.