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 :

Epaisseur bordure par VBA [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2013
    Messages : 116
    Par défaut Epaisseur bordure par VBA
    Bonjour à tous,

    Je crée une macro pour une mise en forme conditionnelle de la cellule B2.

    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    Sub MFC()
        With Range("B2")
            'Supprime les MFC existantes
            .FormatConditions.Delete
     
            'Ajoute une condition (Vrai lorsque la cellule est non vide)
            .FormatConditions.Add Type:=xlExpression, Formula1:="=NON(ESTVIDE($B$2))"
     
            With .FormatConditions(1)
                'Définit la couleur de fond de la cellule lorsque la condition sera vraie.
                .Interior.ColorIndex = 15   'Gris
     
                'Affecte le style "gras" à la police
                .Font.Bold = True
                    'Voir aussi:
                    '.Font.Italic = True
                    '.Font.Strikerkethrough = True
                    '.Font.Underligne = True
     
                'Styles de ligne:
                'xlNone, xlSolid, xlDash, xlDot, xlDashDot, xlDashDotDot, xlGray50, xlGray75, et xlGray25.
                .Borders.LineStyle = xlContinuous
     
                'Couleur bordure
                .Borders.ColorIndex = 5     'Bleu
     
                'Epaisseur trait de la bordure
                .Borders.Weight = xlThin  'Autre constante disponible: xlHairLine
            End With
        End With
    End Sub
    Je voudrais pouvoir faire une bordure plus épaisse. J'essaye le style xlMedium ou xlThick mais j'ai une erreur :
    "Impossible de définir la propriété Weight de la classe Borders".

    Quelqu'un pourrait-il m'aider
    Merci

  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
    Histoire de réduire le périmètre de recherche, essaye de voir ce que ça donne avec ces lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    .Borders(xlEdgeLeft).Weight = xlMedium
    .Borders(xlDiagonalDown).Weight = xlMedium

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2 266
    Par défaut
    Bonjour à tous,

    Fais-le manuellement et tu verras qu'une MFC ne peut pas avoir de bordure épaisse, ce n'est pas dans la liste de choix.
    A part changer la couleur ou mettre des pointillés pour la différencier, guère d'autre solution.
    eric

  4. #4
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2013
    Messages : 116
    Par défaut
    Citation Envoyé par eriiic Voir le message
    Bonjour à tous,

    Fais-le manuellement et tu verras qu'une MFC ne peut pas avoir de bordure épaisse, ce n'est pas dans la liste de choix.
    A part changer la couleur ou mettre des pointillés pour la différencier, guère d'autre solution.
    eric
    Je me doutais de ce problème. Merci

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2013
    Messages : 116
    Par défaut
    Citation Envoyé par Menhir Voir le message
    Histoire de réduire le périmètre de recherche, essaye de voir ce que ça donne avec ces lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    .Borders(xlEdgeLeft).Weight = xlMedium
    .Borders(xlDiagonalDown).Weight = xlMedium
    merci, mais j'ai le même message d'erreur.

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

Discussions similaires

  1. [XL-2010] bordures par vba
    Par ph_anrys dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/03/2013, 12h37
  2. Mise en forme table access par VBA ou SQL
    Par romrai dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 21/02/2006, 12h29
  3. Mettre une image sur bouton par VBA????
    Par electrosat03 dans le forum IHM
    Réponses: 3
    Dernier message: 17/02/2006, 01h54
  4. Faire une MAJ de recordsetclone par VBA.
    Par electrosat03 dans le forum Access
    Réponses: 4
    Dernier message: 03/02/2006, 17h42
  5. Imprimer des selections excel en pdf par VBA
    Par ouellet5 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 07/12/2005, 17h29

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