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 :

Insérer colonne avec pour l'entête un nom et un contour rouge


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
    Responsable de production
    Inscrit en
    Mai 2022
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de production
    Secteur : Distribution

    Informations forums :
    Inscription : Mai 2022
    Messages : 19
    Par défaut Insérer colonne avec pour l'entête un nom et un contour rouge
    Bonjour,

    Je débute en VBA et malgré mes recherches sur le net je suis face à un petit problème.
    Je souhaiterai ajouter une colonne dans un tableau dans lequel les colonnes peuvent changer en fonction de l'extraction des données que je fait de manière hebdo. J'ai besoin d'ajouter cette colonne après la colonne "Sécabilité". Jusqu'à là tout va bien, après c'est plus compliqué pour moi. Je souhaiterai donner un nom a cette colonne (Cadre Rouge) et appliquer un contours rouge et gras le tout de manière automatique sans préciser le nom de l'adresse de la cellule. Pouvez vous m'aider ?

    En vous remerciant par avance pour votre aide/retour
    Arnaud

    Cf. voici le code

    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
    Sub inserColonne()
     
    Dim O As Object 'déclare la variable O (Onglet)
    Dim R As Range 'déclare la variable R (Recherche)
    Dim col As Byte 'déclare la variable COL (COLonne)
     
    Set O = Sheets("test") 'définit l'onglet O 
    Set R = O.Rows(1).Find("Sécabilité", , xlValues, xlWhole) 'définit la recherche R (recherche "Sécabilité" dans la ligne 1 de l'onglet O)
     
     
    If Not R Is Nothing Then 'condition : si il existe au moins une occurrence trouvée
        col = R.Column 'définit la colonne COL
        Columns(col + 1).Insert Shift:=xlToRight  'insère une colonne après la colonne COL
        Range("BG1") = "Cadre Rouge"
        Range("BG1").Borders.Value = 1 'appliquer une bordure, 1 étant l'épaisseur
        Range("BG1").Borders.Weight = 3 'mettre la bordure en gras
        Range("BG1").Borders.Color = RGB(255, 0, 0) 'Mettre la bordure en rouge
    End If 'fin de la condition
     
     
    End Sub

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    pour commencer :


    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
    Sub inserColonne()
     
    Dim O As Worksheet 'déclare la variable O (Onglet)
    Dim R As Range 'déclare la variable R (Recherche)
    Dim col As Byte 'déclare la variable COL (COLonne)
     
    Set O = Sheets("test") 'définit l'onglet O
    Set R = O.Rows(1).Find("Sécabilité", , xlValues, xlWhole) 'définit la recherche R (recherche "Sécabilité" dans la ligne 1 de l'onglet O)
     
     
    If Not R Is Nothing Then 'condition : si il existe au moins une occurrence trouvée
    col = R.Column 'définit la colonne COL
    MsgBox col
    O.Columns(col + 1).Insert Shift:=xlToRight 'insère une colonne après la colonne COL
    O.Cells(1, col + 1) = "Cadre Rouge"
    O.Cells(1, col + 1).Borders.Value = 1 'appliquer une bordure, 1 étant l'épaisseur
    O.Cells(1, col + 1).Borders.Weight = 3 'mettre la bordure en gras
    O.Cells(1, col + 1).Borders.Color = RGB(255, 0, 0) 'Mettre la bordure en rouge
    End If 'fin de la condition
    End Sub

  3. #3
    Membre averti
    Homme Profil pro
    Responsable de production
    Inscrit en
    Mai 2022
    Messages
    19
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Responsable de production
    Secteur : Distribution

    Informations forums :
    Inscription : Mai 2022
    Messages : 19
    Par défaut Un grand Merci à vous
    Cela répond parfaitement à mon besoin.

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

Discussions similaires

  1. [XL-2016] VBA macro pour colorer colonne avec conditions
    Par voldedeath dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 21/12/2021, 12h17
  2. Insérer colonne avec valeur par défaut dans une extraction SQL
    Par Compte temporaire dans le forum Débuter
    Réponses: 2
    Dernier message: 16/08/2017, 11h47
  3. Réponses: 1
    Dernier message: 03/12/2006, 16h13
  4. [VBA-E] Probleme avec l'activate d'un classeur ouvert pour un copy paste
    Par AliochaBada dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 10/08/2006, 22h31
  5. Réponses: 1
    Dernier message: 18/05/2005, 18h18

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