Bonjour,
Je cherche à savoir le code VBA à rentrer pour connaitre la dernière cellule d'une colonne à avoir des bordures.
Merci d'avance.
Daniel
Bonjour,
Je cherche à savoir le code VBA à rentrer pour connaitre la dernière cellule d'une colonne à avoir des bordures.
Merci d'avance.
Daniel
Pour éviter de tester tous les styles de bordure (Il y rarement des diagonales)ce serait plus facile si tu savais à l'avance ceux que ta cellule ne comportera pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Sub Bordure0() Dim Bordure As Boolean Dim Line, Col As Integer Bordure = True Line = 0 Col = 1 Do Until Bordure = False Line = Line + 1 With Cells(Line, Col) If .Borders(xlEdgeLeft).LineStyle = xlNone And _ .Borders(xlEdgeTop).LineStyle = xlNone And _ .Borders(xlEdgeBottom).LineStyle = xlNone And _ .Borders(xlEdgeRight).LineStyle = xlNone Then Bordure = False End With Loop MsgBox ("La ligne " + Str(Line) + " N'a pas de bordure") End Sub
Bonsoir,
on peut aussi remplacer
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 With Cells(Line, Col) If .Borders(xlEdgeLeft).LineStyle = xlNone And _ .Borders(xlEdgeTop).LineStyle = xlNone And _ .Borders(xlEdgeBottom).LineStyle = xlNone And _ .Borders(xlEdgeRight).LineStyle = xlNone Then Bordure = False End With
fred65200
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 If Cells(Line, Col).Borders.LineStyle = xlNone Then Bordure = False
Ouais mais alors, on n'exclut pas les diagonales qui sont rarement utilisées
Bonjour,
je profite de ce post (qui n'a pas été noté résolu ...) pour relancer la question.
j'aimerais détecter la dernière cellule (la plus en bas à droite) contenant une bordure, et en évitant de faire une boucle sur chaque cellule, ce qui est faisable en adaptant la proposition ci dessus (ce qui prend un certain temps). Existe-t-il quelque chose d'equivalent à Range.End par exemple à utiliser en détectant les bordures ?
Merci
PS : En attendant, pour mon cas précis, l'utilisateur à la possibilité d'ajouter des lignes et colonnes dans un tabelau, je nomme la dernière cellule de ce tableau en espérant qu'il n'insert toujours qu'à l'intérieur de celui-ci et je récupère cette cellule nommée.
Bonjour
je ne sais pas si c'est ça que tu cherche:
Mais pas de détection des diagonales.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Ligne = Range("A1").SpecialCells(xlCellTypeLastCell).Row Colonne = Range("A1").SpecialCells(xlCellTypeLastCell).Column If Cells(Ligne, Colonne).Borders.LineStyle = xlNone Then Bordure = False
Partager