Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Compter les "xlDiagonalUp"

Vinc

XLDnaute Junior
-Bonjour à vous, je sèche un peu sur ma ligne de commande VBA et souhaiterais avoir votre contribution...
-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

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

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…