OVH Cloud OVH Cloud

Bordures

4 réponses
Avatar
Denys
Bonjour =E0 tous,

Avec l'aide d'un Userform, des donn=E9es sont inscrites sur=20
une feuille Excel. Dans les options, j'ai choisi de ne pas=20
faire apparaitre les "gridlines"...

Cependant, lorsque les donn=E9es sont entr=E9es, je voudrais=20
bien que chaque cellule ait une bordure. J'ai donc pens=E9=20
qu'avant que les donn=E9es soient entr=E9es, d'aller chercher=20
la derni=E8re cellule non utilis=E9e dans la colonne A,=20
d'utiliser la fonction Resize et d'ajouter des bordures...=20
Seulement, je n'y arrive pas, Excel cherchant sans cesse=20
un objet... Voici mon code...

Sub Bordures()
With ActiveSheet
.Range("A7").End(xlDown).Select
Selection.Resize(0, 22).BorderAround
End With
End Sub

J'ai essay=E9 diif=E9rentes avenues, sans succ=E8s.... Pourriez-
vous m'aider???

Merci

Denys

4 réponses

Avatar
Rai
"Denys" a écrit dans le message de news:15ffc01c41e4d$9d0cbf
b0$
Bonjour à tous,

[snip]...


d'utiliser la fonction Resize et d'ajouter des bordures...
Seulement, je n'y arrive pas, Excel cherchant sans cesse
un objet... Voici mon code...

Sub Bordures()
With ActiveSheet
.Range("A7").End(xlDown).Select
Selection.Resize(0, 22).BorderAround
End With
End Sub

J'ai essayé diiférentes avenues, sans succès.... Pourriez-
vous m'aider???

Merci

Denys


Bonsoir,

Je vois 1 petite chose à modifier dans ton code.

Resize(0,22) ne peut pas marcher à cause du 0. Ce premier argument correspond au nombre de lignes de la nouvelles plages ... ce sera donc forcément un entier supérieur à 0. Cet argument est facultatif, on pourra donc l'ommettre.

le code seait donc
Selection.Resize(, 22).BorderAround

chez moi, ça marche.

Peut-être sera-t-il utile de préciser la couleur et l'épaisseur du trait que tu veux afficher.


--
Cordialement,

Rai
Remplacer point par la ponctuation appropriée pour répondre...

Avatar
Jean-François Aubert
Salut Denys,

Sub Bordures2()
With ActiveSheet.Range("A7").End(xlDown).Resize(1, 22)
.BorderAround ColorIndex:=xlAutomatic
End With
End Sub

--
Amicalement

Jean-François Aubert
{Vaudois de la Côte Lémanique}


"Denys" a écrit dans le message de
news:15ffc01c41e4d$9d0cbfb0$
Bonjour à tous,

Avec l'aide d'un Userform, des données sont inscrites sur
une feuille Excel. Dans les options, j'ai choisi de ne pas
faire apparaitre les "gridlines"...

Cependant, lorsque les données sont entrées, je voudrais
bien que chaque cellule ait une bordure. J'ai donc pensé
qu'avant que les données soient entrées, d'aller chercher
la dernière cellule non utilisée dans la colonne A,
d'utiliser la fonction Resize et d'ajouter des bordures...
Seulement, je n'y arrive pas, Excel cherchant sans cesse
un objet... Voici mon code...

Sub Bordures()
With ActiveSheet
.Range("A7").End(xlDown).Select
Selection.Resize(0, 22).BorderAround
End With
End Sub

J'ai essayé diiférentes avenues, sans succès.... Pourriez-
vous m'aider???

Merci

Denys
Avatar
michdenis
Bonjour Denys,

Cette procédure va chercher la dernière ligne des données de la colonne A
En supposant que cette ligne possède déjà un format (bordure), elle recopie
ces bordures sur la ligne suivante des colonnes A à D.

'--------------------------------
Sub Bordures()
Dim Rg As Range
With Worksheets("Feuil2")
Set Rg = .Range("A1:A" & .Range("A65536").End(xlUp).Row)
Rg.Copy
Rg.Offset(1).Resize(, 4).PasteSpecial xlPasteFormats
Application.CutCopyMode = False
End With
Set Rg = Nothing
End Sub
'--------------------------------


Salutations!





"Denys" a écrit dans le message de news:15ffc01c41e4d$9d0cbfb0$
Bonjour à tous,

Avec l'aide d'un Userform, des données sont inscrites sur
une feuille Excel. Dans les options, j'ai choisi de ne pas
faire apparaitre les "gridlines"...

Cependant, lorsque les données sont entrées, je voudrais
bien que chaque cellule ait une bordure. J'ai donc pensé
qu'avant que les données soient entrées, d'aller chercher
la dernière cellule non utilisée dans la colonne A,
d'utiliser la fonction Resize et d'ajouter des bordures...
Seulement, je n'y arrive pas, Excel cherchant sans cesse
un objet... Voici mon code...

Sub Bordures()
With ActiveSheet
.Range("A7").End(xlDown).Select
Selection.Resize(0, 22).BorderAround
End With
End Sub

J'ai essayé diiférentes avenues, sans succès.... Pourriez-
vous m'aider???

Merci

Denys
Avatar
Denys
Bonjour Denis, Jean-François et Rai,

Merci beaucoup, tout fonctionne...Très gentil à vous
d'avoir pris le temps...

Bonne fin de semaine à tous...

Denys


-----Original Message-----
Bonjour à tous,

Avec l'aide d'un Userform, des données sont inscrites sur
une feuille Excel. Dans les options, j'ai choisi de ne
pas

faire apparaitre les "gridlines"...

Cependant, lorsque les données sont entrées, je voudrais
bien que chaque cellule ait une bordure. J'ai donc pensé
qu'avant que les données soient entrées, d'aller chercher
la dernière cellule non utilisée dans la colonne A,
d'utiliser la fonction Resize et d'ajouter des
bordures...

Seulement, je n'y arrive pas, Excel cherchant sans cesse
un objet... Voici mon code...

Sub Bordures()
With ActiveSheet
.Range("A7").End(xlDown).Select
Selection.Resize(0, 22).BorderAround
End With
End Sub

J'ai essayé diiférentes avenues, sans succès.... Pourriez-
vous m'aider???

Merci

Denys

.