VBA Bordure de cellule qui se déplace

  • Initiateur de la discussion Initiateur de la discussion Anto_n1
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Anto_n1

XLDnaute Nouveau
Bonjour à tous!
Il s'agit ici de mon premier message. Je travail sous Vba pour mon travail depuis plusieurs mois et jusqu'ici, j'arrivais toujours à trouver des réponses (sur le net et en cherchant).

Il s'agit d'une question sans importance mais irrésolue, peux être saurez vous éclairer mes lanternes.

Je réalise par VBA la mise en forme de mon tableau. Il y a un exemple détaillé dans le fichier joint. Le souci concerne le déplacement apparemment sans raison d'une bordure.

1) Initialement, une cellule (E10 dans le fichier) à une bordure basse simple et une bordure gauche double. La cellule E11 (dessous) est vide.

2) Je veux que la cellule E11 est une bordure gauche double. Rien d'autre en change. Tout parait simple.

4) En lançant la macro, je remarque le déplacement de la bordure basse également. En effet, elle passe de l'etat "bordure basse E10" à l'etat "bordure haute E11".

Visuellement, rien ne change. Dans la pratique, si on insere des lignes entre les deux, ça fout le bordel 🙂

Manque t il quelque chose au code? ou se situe mon erreur?


PHP:
Sub Exemple()

'Selectionner la case E10 avant de lancer la macro
Range("E10").Activate
Range(ActiveCell.Offset(1, 0), ActiveCell.Offset(1, 0)).Select
 'test
 With Selection.Borders(xlEdgeLeft)
       .LineStyle = xlDouble
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThick
    
   End With

End Sub


Merci pour votre aide!
 

Pièces jointes

Dernière édition:
Re : VBA Bordure de cellule qui se déplace

Bonjour à tous,

Bienvenue sur XLD

Peux-tu essayer :
VB:
Option Explicit
Sub Exemple()
    Range("E10").Activate
    With ActiveCell.Offset(1, 0)
    .Borders(xlEdgeLeft).LineStyle = xlDouble
    .Borders(xlEdgeBottom).LineStyle = xlContinuous
    End With
End Sub

A+ à tous
 
Re : VBA Bordure de cellule qui se déplace

Bonjour JCGL,

merci.

Ta solution fonctionne 🙂
En revanche, j'ai désormais une duplication de cette bordure. Elle se trouve bien en Bottom de la E10, mais egalement en TOP de la E11. (par curiosité 🙂 mon souci est bel est bien réglé!)

Sais tu quelle est la raison de ce phénomène?

Réponse rapide et efficace, en tout cas!

Edit: sinon, je ne comprends pas vraiment le "Explicit" ? Au dessus du Sub, il ne sert à rien non?
ReEdit: je crois qu'en mettant le pouce vert, je signale que la réponse est donnée?
 
Dernière édition:
Re : VBA Bordure de cellule qui se déplace

Bonjour à tous,

Le 'Option Explicit' est mis par défaut dès que j'ouvre le VBE (choix possible dans les paramètres).

"Il ne sert à rien"... C'est un peu réducteur... Tu peux ne pas le mettre et le code pourra fonctionner. Mais si tu le mets, il t'obligera à déclarer tes variables et sera une aide très appréciable sur la syntaxe employée : tu écris tout en minuscule et si la syntaxe utilisée est bonne la casse se modifie.

A+ à tous
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour