Compter les "xlDiagonalUp"

Vinc

XLDnaute Junior
-Bonjour à vous, je sèche un peu sur ma ligne de commande VBA et souhaiterais avoir votre contribution... :eek:
-Je souhaite dans une plage donné compter le nombre de cellule avec une bordure oblique...

Voici ma fonction VBA appelée LineNB :
Code:
Function LineNB(Plage As Range) As Long
Application.Volatile

Dim Cel As Range
    For Each Cel In Plage.Cells
    If Selection.Borders(xlDiagonalUp).LineStyle = xlContinuous Then LineNB = LineNB + 1
  Next Cel
End Function

Ensuite dans la cellule ou je souhaite comptabiliser le nombre de bordure j'ai inscris la fonction suivante :
Code:
=LineNB(B5:H105)

Merci de votre aide car ca reste toujours à 0.. :(
 

job75

XLDnaute Barbatruc
Re : Compter les "xlDiagonalUp"

Bonjour Vinc, skoobi, Pierrot, le forum,

Essayer :

Code:
Function LineNB(plage As Range) As Long
Application.Volatile
Dim Cel As Range
For Each Cel In plage
LineNB = LineNB - (Cel.Borders(xlDiagonalUp).LineStyle <> xlNone)
Next Cel
End Function

Il est rappelé que dans une opération, True se converti en -1

Quand on modifie simplement le format des cellules, la fonction n'est pas recalculée. Pour obtenir le recalcul, appuyer sur la touche F9.

A+
 

Vinc

XLDnaute Junior
Re : Compter les "xlDiagonalUp"

Merci pour vos réponses... Merci "skoobi", je suis vraiment tombé de haut quand j'ai vu la réponse et cela n'a pas été le manque de chercher :mad:

Sinon "Job75" j'ai essayé ta solution et je confirme qu'elle fonctionne à merveille aussi...
 

Discussions similaires

Statistiques des forums

Discussions
312 488
Messages
2 088 865
Membres
103 979
dernier inscrit
imed