IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Aide compréhension code avec Bordure horizontale


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 62
    Par défaut Aide compréhension code avec Bordure horizontale
    Bonjour,

    J'ai essayé d'écrire un code me permettant d'ajouter des bordures horizontales bleues clair entre les colonnes D et H d'un tableau Excel.

    Le code est le suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
      For Each cell In Range("D5:H" & derLn - 1)
            For i = 8 To 9
                With cell.Borders(i)
                    .LineStyle = xlContinuous
                    .Color = RGB(217, 225, 242)
                    .Weight = xlThin
                End With
            Next i
        Next cell
    Ce code fonctionne parfaitement. Cependant, je ne comprends pas le fonctionnement du "for i = 8 to 9". J'ai fait des tests, et visiblement cela impact le trait des bordures (si je met par ex "for i= 4 to 9" je me retrouve avec des lignes diagonales dans chaque cellule). Quelqu'un pourrait il m'expliquer? Y a t'il une règle particulière liée à la propriété .Borders?

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    La variable i est utilisée pour désigner le bord concerné.
    8 et 9 désignent respectivement la bordure du haut et celle du bas d'une cellule.
    Lire ça : https://docs.microsoft.com/fr-fr/off...border(object)
    et ça : https://docs.microsoft.com/fr-fr/off...xlbordersindex

    Cela dit, il y a bien plus simple pour écrire ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With Range("D5:H" & derLn).Borders(8)
        .LineStyle = xlContinuous
        .Color = RGB(217, 225, 242)
        .Weight = xlThin
    End With

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 62
    Par défaut
    Bonjour,

    Merci pour votre réponse.

    Le code que vous m'avez proposé ne fonctionne pas. Cela ne crée pas d'erreurs, mais les bordures n'apparaissent pas..

    Savez-vous pourquoi?

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Essaye ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With Range("D4:H" & derLn).Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .Color = RGB(217, 225, 242)
        .Weight = xlThin
    End With
    Cela dit, la couleur et l'épaisseur que tu as choisis sont quasiment identiques à ceux du quadrillage par défaut d'Excel donc si tu n'as pas supprimé l'affichage du quadrillage, ce sera quasiment invisible.

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 62
    Par défaut
    Bonjour,

    Ce code fonctionne parfaitement ! Merci pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Aide compréhension code tkinter
    Par outiat dans le forum GUI
    Réponses: 8
    Dernier message: 30/10/2019, 19h21
  2. Aide compréhension d'un code
    Par Tagazouh dans le forum Débuter
    Réponses: 4
    Dernier message: 17/02/2012, 18h12
  3. Aide - Compréhension code - $this->{$element->helper}()
    Par omageus dans le forum Zend Framework
    Réponses: 2
    Dernier message: 16/03/2010, 18h09
  4. connexion ado avec acces et besoin d'aide pour code vb svp
    Par essse dans le forum Visual Studio
    Réponses: 0
    Dernier message: 06/03/2009, 09h57
  5. [Mail] Besoin d'aide sur code email avec PJ
    Par flysurfer dans le forum Langage
    Réponses: 1
    Dernier message: 23/02/2006, 10h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo