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 :

enregistrer un DBGrid


Sujet :

C++Builder

  1. #1
    Membre du Club
    Inscrit en
    Novembre 2006
    Messages
    134
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 134
    Points : 65
    Points
    65
    Par défaut enregistrer un DBGrid
    salut!!
    j'ai cherché un peu sur le site de developpez et sur les forums et je me suis un peu perdus voila ma question :
    je veux enregistre une table sous form de dbf ou db ou xls dans un repertoir ?
    voila merci

  2. #2
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mars 2007
    Messages : 148
    Points : 83
    Points
    83
    Par défaut
    Salut nessing,

    Si vous aviez fait une petite recherche sur le forum, vous auriez trouvé.

    Bref, si vous voulez enregistrer les données que renferme votre DbGrid dans un fichier Excel, voici comment faire :

    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
     
    Variant vMSExcel;
     
    vMSExcel = Variant::CreateObject("Excel.Application");
    vMSExcel.OlePropertySet("Visible", true);
     
    Variant vXLWorkbook, vXLWorkbooks;
     
    vXLWorkbooks = vMSExcel.OlePropertyGet("Workbooks");
    vXLWorkbook = vXLWorkbooks.OleFunction("Add");
     
    Variant vWorksheet, vSheetName;
     
    vSheetName = "Feuil1";
     
    vWorksheet = vXLWorkbook.OlePropertyGet("Worksheets",vSheetName);
     
    Variant vLn,vCl, vCell;
    String vValue;
    int i,j;
     
    for(j=0;j<=(Form1->DBGrid1->RowCount-1);j++)
    {
    vLn=j+1;
    vLn=vLn.operator int();
    for(i=0;i<=(Form1->DBGrid1->ColCount-1);i++)
    {
    vCl =i+1;
    vCl =vCl.operator int();
    vCell = vWorksheet.OlePropertyGet("Cells",vLn,vCl);
    vValue = DBGrid1->Cells[i][j];
    vCell.OlePropertySet("Value", vValue);
    }
    }
    N'oubliez pas d'ajouter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    #include <utilcls.h>
    Je n'ai pas essayé le code avec un DbGrid mais je peux vous assurer que ça marche nickel avec un StringGrid.

    J'espère que c'est ce que vous cherchez.

    Bien cordialement.

    A bientôt

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 25
    Points : 36
    Points
    36
    Par défaut
    tu peux utiliser les boîtes de dialogues enregistrer sous, ca fait comme lorsque windows te demande d'enregistrer ton travail et en plus tu peux selectionner ton repertoire et le type de fichier visible.

  4. #4
    Membre du Club
    Inscrit en
    Novembre 2006
    Messages
    134
    Détails du profil
    Informations forums :
    Inscription : Novembre 2006
    Messages : 134
    Points : 65
    Points
    65
    Par défaut
    salut!!
    Hoopsy
    Bref, si vous voulez enregistrer les données que renferme votre DbGrid dans un fichier Excel,....
    j'aimerais bien fair une remarque si c'est possible ton code que tu a poster a des erreur , enfin je dis sa en cas un debutant consulte le foum tombe dans l'erreur enfin bon ,
    j'ai corriger ceux que g pus mais bon sa ne marche pa sa donne erreur !!
    Niko62
    tu peux utiliser les boîtes de dialogues enregistrer sous, ca fait comme lorsque windows te demande d'enregistrer ton travail et en plus tu peux selectionner ton repertoire et le type de fichier visible.
    sa j'ai comencer avec et le boutton et je me suis arreter dans le code ,je sais qu'ilya au debut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (if(SaveDialog1->Execute()))
    et la suite est confuse pour un DBGrid ,
    voila esperant que quelqu'un a une idée merci a vous

  5. #5
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Il ya principalement deux erreurs :

    RowCount et ColCount ne sont pas des membres de DBGrid !!
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  6. #6
    Membre chevronné
    Avatar de kmaniche
    Inscrit en
    Janvier 2006
    Messages
    1 717
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 717
    Points : 1 884
    Points
    1 884
    Par défaut
    Bonjour,

    Je crois que tu confonds le TStringGrid avec TDBGrid.

    @+
    Les règles Les cours La fonction rechercher

    N'oubliez pas de mettre en et de voter.

    La terre n'est pas un héritage de nos parents, mais un emprunt que nous faisons à nos enfants. La protection de notre environnement est la responsabilité de tous. Ne reculez plus devant l'urgence, agissez !

  7. #7
    Membre régulier
    Inscrit en
    Mars 2007
    Messages
    148
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Mars 2007
    Messages : 148
    Points : 83
    Points
    83
    Par défaut
    Salut à tous,

    J'ai bien précisé :

    Je n'ai pas essayé le code avec un DbGrid mais je peux vous assurer que ça marche nickel avec un StringGrid.
    Je l'essayerai prochainement et je vous contacterai.

    Pardon nessing de vous avoir donné de faux espoirs, ce n'était pas mon intention.

    A bientôt

Discussions similaires

  1. DBGrid récupérer les valeurs de l'enregistrement courant
    Par bob_sapp dans le forum Bases de données
    Réponses: 5
    Dernier message: 06/09/2014, 07h56
  2. Nombre d'enregistrement dans dbgrid
    Par redoran dans le forum Composants VCL
    Réponses: 5
    Dernier message: 16/09/2010, 08h40
  3. DbGrid et enregistrement Vide
    Par helmis dans le forum Bases de données
    Réponses: 1
    Dernier message: 01/04/2006, 10h20
  4. [VB]Ajout d'enregistrement dans un DBGrid
    Par nikita34 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 26/01/2006, 08h39
  5. insérer une ligne dans un dbgrid entre 2 enregistrements
    Par bertrand_declerck dans le forum Bases de données
    Réponses: 3
    Dernier message: 22/09/2005, 09h15

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