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 :

Supprimer une ligne Exel avec condition [Débutant]


Sujet :

C++Builder

  1. #41
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Et il faut le traduire en C++ . C'est ca que tu dit?

  2. #42
    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
    Points : 3 766
    Points
    3 766
    Par défaut
    oui
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  3. #43
    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
    Points : 3 766
    Points
    3 766
    Par défaut
    J'ai trouve ceci sur le site
    Je l'ai condense en ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    vWorksheet.OlePropertyGet("Range", "A1:AJ20000").OleProcedure("Sort", vWorksheet.OlePropertyGet("Columns", 1), 1);
    Reste a trouver le code pour connaitre l'adresse de la derniere colonne non vide et l'adresse de la derniere ligne non vide
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  4. #44
    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
    Points : 3 766
    Points
    3 766
    Par défaut
    Code de trie avec detection fin de ligne et fin de colonne
    le code detaille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    int depart = 2;
     
    int fin = vWorksheet.OlePropertyGet("Range", "A1").OlePropertyGet("SpecialCells", 11).OlePropertyGet("Row");
     
    int finCol = vWorksheet.OlePropertyGet("Range", "A1").OlePropertyGet("SpecialCells", 11).OlePropertyGet("Column");
     
    Variant vCol, vRange;
     
    vCol = vWorksheet.OlePropertyGet("Columns", 1);
     
    vRange = vWorksheet.OlePropertyGet("Range", vWorksheet.OlePropertyGet("Cells", depart, 1), vWorksheet.OlePropertyGet("Cells", fin, finCol));
     
    vRange.OleProcedure("Sort", vCol, 1); // 1  xlAscending , 2 xlDescending
    le code condense
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    int depart = 2;
    int fin = vWorksheet.OlePropertyGet("Range", "A1").OlePropertyGet("SpecialCells", 11).OlePropertyGet("Row");
     
    int finCol = vWorksheet.OlePropertyGet("Range", "A1").OlePropertyGet("SpecialCells", 11).OlePropertyGet("Column");
     
    vWorksheet.OlePropertyGet("Range", vWorksheet.OlePropertyGet("Cells",  depart, 1), vWorksheet.OlePropertyGet("Cells", fin, finCol)).OleProcedure("Sort", vWorksheet.OlePropertyGet("Columns", 1),1);
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  5. #45
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Merci . Parcontre tu te prends juste un peu trop la tête au niveau des lignes et colones vides . Puisque a ce stade il ne reste que 3 colones . Qui normalement sont liées entre elles . Donc tu trie la 3 normalement les autres suivent . Du moins sous Excel ca fait ca . Et le nombre de lignes utilisées ont été récupérées dès le début dans un int : lignes . .. Voilà

  6. #46
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Donc après modification . Le code qui me correspond est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    int start = 2;
     
    int fini = lignes;
     
    int finCol = vWorksheet.OlePropertyGet("Range", "C1").OlePropertyGet("SpecialCells", 11).OlePropertyGet("Column");
     
    Variant vCol;
     
    vCol = vWorksheet.OlePropertyGet("Columns", 3);
     
    vRange = vWorksheet.OlePropertyGet("Range", vWorksheet.OlePropertyGet("Cells", start, 1), vWorksheet.OlePropertyGet("Cells", fini, finCol));
     
    vRange.OleProcedure("Sort", vCol, 1); // 1  xlAscending , 2 xlDescending
    . Donc j'avance un peu le programme et bientôt j'aurais re-besoin de toi

  7. #47
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Donc voilà ca y est . Tout est trié comme il faut et je n'ai gardé que ce dont j'avais besoin. Maintenant je suis aux dernières étapes .


    D'abord il faut que j'insère une colone entre la colone A et la colone B pour ensuite la supprimer.
    (pour enlever le bug de la prochaîne etape qui met le reste du code dans la seconde colone ).


    J'ai donc la colone A qui n'est constituée que de nombres au format :

    "340092xxxxxxx"
    3
    4

    J'ai donc besoin d'enlever les 5 premiers chiffres et le dernier .

    "34009]2xxxxxx[x"
    3
    4

    Pour ne garder que un nombre du format
    2xxxxxx
    3
    4

    . Voilà j'espère avoir été clair Et que tu sais comment faire . Disons qu'il y a la fonction Excel . Mais .. Encore une fois..

  8. #48
    Membre actif Avatar de Argol_Medusa
    Homme Profil pro
    Ingénieur Radiofréquences
    Inscrit en
    Août 2005
    Messages
    208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Radiofréquences
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 208
    Points : 242
    Points
    242
    Par défaut
    ( juste un petit message pour remercier blondelle pour les informations sur les versions excels qui conservent la compatibilité ascendante, ce que je ne savais pas.
    Désolé je n'ai pas eu le temps de répondre avant, ayant été très pris ces derniers jours.
    Les problèmes de version que j'avais rencontrés concernaient en fait une différence de langue entre version françaises et anglaise de excel il y a des choses qui changent, au niveau des virgules et points, et également au niveau du nom des formules mathématiques, je ne sais pas s'ils ont résolus ce problème sur les dernières versions d'office. )
    Désolé, on savait pas que c'était impossible, alors on l'a fait

  9. #49
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Oui je suis d'accord pour bien remercier blondelle ..

  10. #50
    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
    Points : 3 766
    Points
    3 766
    Par défaut
    Salut Argol_Medusa, on rencontre plus de probleme avec les versions de BCB que de probleme de version d'Excel, c'est comme cela, ou serait la joie de s'arracher les cheveux devant un code qui refuse de fonctionner
    si je ne me trompe pas les mots de commandes sont tous en anglais depuis la version 2000

    santanas2b, tu sais recuperer le contenu d'une cellule, regarde dans l'aide en ligne de BCB " LeftStr " et " RightStr " une des fonction supprime la partie gauche d'une chaine l'autre la partie droite
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  11. #51
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Ouai . heu .. x) A cause de la version de windows .. Je n'ai pas l'aide de BcB x)

  12. #52
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    J'ai recherché vite fait sur google . Je vais tenter quelque choses . Donc on récupère les valeurs de la case . Mais comment récupérer la chaîne de carrac?
    Puisque Value . C'est un float . Donc . Il faudrait un argument de OleProperty pour récupérer une chaîne de carrac

  13. #53
    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
    Points : 3 766
    Points
    3 766
    Par défaut
    il faut utiliser FloatToStr pour convertir un flottant en String, mais avant essai directement sur un Variant, un Variant peut etre une chaine un entier un flottant ....
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  14. #54
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Hum Je test.. Je suis bête .. c'est un nombre.. je sais pas pourquoi je me voyais modifier la case des noms.. Lol

  15. #55
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Hum . Je ne trouves pas RightStr Et LeftStr

  16. #56
    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
    Points : 3 766
    Points
    3 766
    Par défaut
    Tire de l'aide en ligne
    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
     
    LeftStr Renvoie la sous-chaîne initiale d'une chaîne d'après la longueur spécifiée.
    Unité
    StrUtils
    Catégorie
    routines de gestion des chaînes
    extern PACKAGE AnsiString__fastcall LeftStr(const AnsiString AText, int ACount);
    Description
    LeftStr renvoie les premiers ACount caractères de AText. Par exemple :
    LeftStr("Programmer", 7)
    renvoie la chaîne
    "Program"
    //===========
    RightStr Renvoie la sous-chaîne finale d'une chaîne d'après la longueur spécifiée.
    Unité
    StrUtils
    Catégorie
    routines de gestion des chaînes
    extern PACKAGE AnsiString__fastcall RightStr(const AnsiString AText, int ACount);
    Description
    RightStr renvoie les derniers ACount caractères de AText. Par exemple :
    RightStr("Programmer", 7)
    renvoie la chaîne
    "grammer"
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  17. #57
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Bah il faut que je télécharge StrUtils.h ?
    Parce que ça me dit que ca ne fonctionne pas . Que le fonction n'existe pas . Et j'ai pas encore trouvé de StrUtils.h x)..

  18. #58
    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
    Points : 3 766
    Points
    3 766
    Par défaut
    il suffit juste de mettre dans l'entete du programme " #include "StrUtils.hpp " ou peut etre suivant ta version BCB " #include "StrUtils.h "
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

  19. #59
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2013
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2013
    Messages : 71
    Points : 24
    Points
    24
    Par défaut
    Impossible d'ouvrir le fichier include 'StrUtils.hpp'
    Impossible d'ouvrir le fichier include 'StrUtils.h'
    PS : Bientôt je fais ca avec une soustraction U_u


    Bcb v.5

  20. #60
    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
    Points : 3 766
    Points
    3 766
    Par défaut
    normalement cela s'ecrit comme ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    //---------------------------------------------------------------------------
    #include <vcl.h>
    #pragma hdrstop
    #include "Unit1.h"
    #include "utilcls.h" // <-----------
    #include "StrUtils.hpp" // <------------
    //---------------------------------------------------------------------------
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    pour BCB5 je ne sais pas
    --
    Plutot que d'essayer de réinventer la roue, apprenons à nous en servir

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 4 PremièrePremière 1234 DernièreDernière

Discussions similaires

  1. Supprimer une ligne entière avec condition?!
    Par ChicoXavier dans le forum Général Python
    Réponses: 2
    Dernier message: 08/04/2013, 19h53
  2. Supprimer une ligne excel avec une condition
    Par Quentin006 dans le forum Excel
    Réponses: 4
    Dernier message: 28/05/2009, 11h45
  3. Comment supprimer une ligne de la listbox avec le bouton 'suppr'
    Par florent64 dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 11/06/2007, 17h25
  4. Réponses: 4
    Dernier message: 19/03/2007, 09h57
  5. supprimer une ligne avec cle etrangere
    Par BaBas dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/07/2003, 11h24

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