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 :

Création code couleur


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut Création code couleur
    Bonjour
    j'ai créé des codes qui, grace à des contrôles, permettent d'entrer des valeurs, la couleur de fond, couleur texte, insérer commentaire.
    j'ai une vingtaine de choix dans mon fichier.
    je souhaiterais réduire le nombre de lignes de codes grace au référence des cellule d'un tableau regroupant les informations.


    Merci
    Cordialement

    voici le code actuel

    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
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    Private Sub Radio_Conducteur_Click()
    'statutPersonnel.Hide
     
    'déverrouillage de la feuille
        ActiveSheet.Unprotect ("MDP")
        X = selection.Address
        'Ouverture de la boite de dialogue
        Set Y = Application.InputBox(prompt:="Selectionner les cellules de destination", Type:=8)
        Range(X).Copy
        Y.PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
     With selection.Interior
            'fond de cellule en violet
            .Color = RGB(255, 128, 0)
            .Pattern = xlSolid
            'texte de cellule = PLD
            selection.FormulaR1C1 = "MISSION"
            selection.Characters.Font.Size = 4
            'couleur texte identique au fond
            selection.Font.Color = RGB(255, 128, 0)
            'Index = Selection.Interior.ColorIndex
    End With
        'insere commentaire
        With ActiveCell
            .ClearComments
            .AddComment
            .Comment.Visible = False 'ou True
            .Comment.Text Text:="Mission Conducteur"
            '.UserPicture = chemin
        End With
        'enlever Selection zone
       Range("A" & ActiveCell.Row).Select
        'Range("B2").Select
        'Protection feuille
        ActiveSheet.Protect Password:=("MDP"), DrawingObjects:=True, Contents:=True, Scenarios:=True _
            , AllowFiltering:=True
     End Sub
     
     Private Sub Radio_Convoyeur_click()
     
    'déverrouillage de la feuille
        ActiveSheet.Unprotect ("MDP")
        X = selection.Address
        'Ouverture de la boite de dialogue
        Set Y = Application.InputBox(prompt:="Selectionner les cellules de destination", Type:=8)
        Range(X).Copy
        Y.PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
     With selection.Interior
            'fond de cellule en violet
            .Color = RGB(128, 64, 0)
            .Pattern = xlSolid
            'texte de cellule = PLD
            selection.FormulaR1C1 = "MISSION"
            selection.Characters.Font.Size = 4
            'couleur texte identique au fond
            selection.Font.Color = RGB(128, 64, 0)
            'Index = Selection.Interior.ColorIndex
    End With
        'insere commentaire
        With ActiveCell
            .ClearComments
            .AddComment
            .Comment.Visible = False 'ou True
            .Comment.Text Text:="Mission Convoyeur"
            '.UserPicture = chemin
     
     End With
        'enlever Selection zone mémorisée
       Range("A" & ActiveCell.Row).Select
        'Range("B2").Select
        'protection de la feuille
        ActiveSheet.Protect Password:=("MDP"), DrawingObjects:=True, Contents:=True, Scenarios:=True _
            , AllowFiltering:=True
    End Sub
    Images attachées Images attachées  

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Franchement, je n'y comprends pas grand-chose. Pourquoi deux macros ? Peux-tu donner un exemple ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut
    bonjour

    les macros sont les anciens codes, je voudrais modifer mais il n'y a que la valeur qui est renvoyée, pas le format ni le commentaire.

    La cellule B13 contient une valeur texte, avec un commentaire, une trame de fond et le texte en couleur.
    mais la macro ne renvoit que la valeur dans la plage sélectionnée.

    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
    Sub Radio_Convoyeur()
     
     
     
        X = Selection.Address 'zone sélectionnée
        Z = Sheets("Feuil1").Range("b13") 'valeurs a copier avec le format et le commentaire
     
        'Ouverture de la boite de dialogue
        Set Y = Application.InputBox(prompt:="Selectionner les cellules de destination", Type:=8)
        Range(X).Copy
        Y.PasteSpecial Paste:=xlPasteValues
        Application.CutCopyMode = False
     
        Selection = Z 'copie le contenu dans la zone sélectionnée
        'le probleme c'est qu'il n'y a que la valeur qui est copiée
     
    End Sub

  4. #4
    Membre expérimenté
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Février 2015
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur commercial

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

    Voici une piste pour toi :

    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
     
    Sub Radio_Convoyeur()
     
        X = Selection.Address 'zone sélectionnée
        Z = Sheets("Feuil1").Range("b13") 'valeurs a copier avec le format et le commentaire
     
        'Ouvertue de la boite de dialogue
        Set Y = Application.InputBox(prompt:="Selectionner les cellules de destination", Type:=8)
        Range(X).Copy
        Y.Select
        ActiveSheet.Paste
        Application.CutCopyMode = False
     
        Selection = Z 'copie le contenu dans la zone sélectionnée
        'le probleme c'est qu'il n'y a que la valeur qui est copiée
    End Sub

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 116
    Par défaut
    Merci
    Mais il n'y a que la valeur qui est copiée, il manque le format et le commentaire de la cellule source.
    j'ai fait ceci est ça fonctionne

    merci pour l'idée

    il me reste à créer une liste de choix de la colonne A et de renvoyer les données de la cellule de droite.

    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
    Sub Radio_test()
     
        X = Selection.Address 'zone sélectionnée
     
     
        'Ouvertue de la boite de dialogue
        Set Y = Application.InputBox(prompt:="Selectionner les cellules de destination", Type:=8)
        Range(X).Copy
        Y.Select
        ActiveSheet.Paste
        Application.CutCopyMode = False
     
        Sheets("Feuil1").Range("b15").Copy Selection
     
    End Sub

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

Discussions similaires

  1. [Couleur] Modification du code couleur de l'interface
    Par Therich dans le forum Eclipse Java
    Réponses: 3
    Dernier message: 31/01/2006, 20h00
  2. [C#][couleur]Utilisation des codes couleurs?
    Par bakonu dans le forum C#
    Réponses: 3
    Dernier message: 28/11/2005, 19h38
  3. codes couleur vga
    Par arcane dans le forum Ordinateurs
    Réponses: 3
    Dernier message: 02/05/2005, 23h33
  4. Calcul simple pour code couleur
    Par Boumeur dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 16/04/2005, 10h51
  5. [Color] recuperer un code couleur HTML
    Par worldchampion57 dans le forum API standards et tierces
    Réponses: 3
    Dernier message: 10/02/2005, 13h31

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