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

C++Builder Discussion :

encore du excel :) remplissage de cellule


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2005
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 29
    Par défaut encore du excel :) remplissage de cellule
    bonjour a tous

    voila encore une petite question excel je desir passer faire du remplissage de cellule en couleur mais je ne sais vraiment pas comment mi prendre

    une idee sur la question ?

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    349
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 349
    Par défaut
    Bonjour, voici un exemple de coloriage d'une plage de cellule en jaune (colorindex=19)

    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
     
            Variant vMSExcel,vXLWorkbooks,vXLWorkbook,vWorksheet,vCell;
     
            try
            {
                    vMSExcel = Variant::GetActiveObject("Excel.Application"); // Capture d'une instance existante d'Excel
            }
                    // Si Excel n'est pas déjà ouvert, une exception est levée ...
            catch(EOleSysError& e )
            {
                    vMSExcel = Variant::CreateObject("Excel.Application"); // Si Excel n'est pas lancé, on l'exécute
            }
     
            vMSExcel.OlePropertySet("Visible", true);
     
            vXLWorkbooks = vMSExcel.OlePropertyGet("Workbooks");
     
    		// nouveau classeur
     
    	vXLWorkbook = vXLWorkbooks.OleFunction("Add");
     
    		// 1ère feuille
            vWorksheet = vXLWorkbook.OlePropertyGet("Worksheets",1);
     
            vCell = vWorksheet.OlePropertyGet("Range", "A2:B8);
     
            vCell.OlePropertyGet("Interior").OlePropertySet("ColorIndex",19);
    Consulte le tutorial http://lfe.developpez.com/Excel/ pour plus d'infos

  3. #3
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut griffit:
    Tu peu essayer aussi ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    // on selectionne la cellule a modifier
    vMSExcel.OlePropertyGet("Range", "E4").OleProcedure("Select");
    // attention les couleurs vont de 0 à 16
    // on change la couleur de fond ici en jaune
    vMSExcel.OlePropertyGet("Selection").OlePropertyGet("Interior").OlePropertySet("ColorIndex", 6);
    //-------------------------------------------------------
    // on selectionne les cellules a modifier
    vMSExcel.OlePropertyGet("Range", "A2:C5").OleProcedure("Select");
    // attention les couleurs vont de 0 à 16
    // on change la couleur de fond ici en jaune
    vMSExcel.OlePropertyGet("Selection").OlePropertyGet("Interior").OlePropertySet("ColorIndex", 6);

  4. #4
    Membre averti
    Inscrit en
    Décembre 2005
    Messages
    29
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 29
    Par défaut
    super merci cela fonctionne mais comment trouver le code des 16 couleur ?

  5. #5
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut griffit:
    essaye quelque chose du genre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    for (int i=1; i<=16; i++)
    {
    vCell = vWorksheet.OlePropertyGet("Cells", i, 1);
    vWorksheet.OlePropertyGet("Cells", i, 1).OleProcedure("Select");
    vCell.OlePropertySet("Value", i);
    vWorksheet.OlePropertyGet("Cells", i, 2).OleProcedure("Select");
    vMSExcel.OlePropertyGet("Selection").OlePropertyGet("Interior").OlePropertySet("ColorIndex", i);
    }

  6. #6
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Apres lecture de l'aide en ligne je me suis apercu que l'on pouvait avoir 56 couleurs
    Voici le code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    for (int i=1; i<=57; i++)
    {
    vCell = vWorksheet.OlePropertyGet("Cells", i, 1);
    vWorksheet.OlePropertyGet("Cells", i, 1).OleProcedure("Select");
    vCell.OlePropertySet("Value", i - 1);
    vWorksheet.OlePropertyGet("Cells", i, 2).OleProcedure("Select");
    vMSExcel.OlePropertyGet("Selection").OlePropertyGet("Interior").OlePropertySet("ColorIndex", i - 1);
    }

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

Discussions similaires

  1. [XL-2003] Macro excel qui vérifie le remplissage ce cellule avant enregistrement
    Par pbuhler dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/03/2015, 18h44
  2. [VBA-E] Excel et le remplissage de cellules
    Par amand81 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/01/2007, 10h39
  3. [excel] format de cellule
    Par alpachico dans le forum Excel
    Réponses: 5
    Dernier message: 28/07/2005, 10h09
  4. [VBA] Access-> Excel Format de cellule
    Par toflofr dans le forum VBA Access
    Réponses: 19
    Dernier message: 31/07/2003, 14h26
  5. [] [Excel] Fusionner des cellules
    Par SamyD dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/12/2002, 18h37

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