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 :

Manipulation d'une chaine de caractères [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif Avatar de CristofMartins
    Homme Profil pro
    ICH-DEV
    Inscrit en
    Juillet 2012
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Suisse

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 140
    Points : 219
    Points
    219
    Par défaut Manipulation d'une chaine de caractères
    Bonjour,
    voici mon problème :
    j'ai une string. Ma string contient une date.
    Ma string peut avoir les valeurs suivantes :
    xx-xx-xxxx
    x-xx-xxxx
    xx-x-xxxx
    x-x-xxxx

    x = Nombre
    Moi ce que je voudrais c'est créer une méthode pour prendre chaque nombre. Le jour le mois et l'année. Quelqu'un a une solutions ?
    Merci d'avance

  2. #2
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 526
    Points : 16 463
    Points
    16 463
    Par défaut
    Bonjour

    As-essayé la fonction CDATE ? Puis MONTH et DAY

  3. #3
    Membre actif Avatar de CristofMartins
    Homme Profil pro
    ICH-DEV
    Inscrit en
    Juillet 2012
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Suisse

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 140
    Points : 219
    Points
    219
    Par défaut
    Salut,
    Oui mais c'est pas vraiment ce qu'il me faut.
    Ce je cherche vraiment c'est comment trouver le premier "-" et prendre tout ce qu'il y a avant et trouver le deuxième prendre ce qu'il y a entre les deux "-" et prendre le reste..

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Bonjour,

    si l'ordre Jour/Mois/Année est toujours respecté :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim tb
    Dim MaDate As Date
    tb = Split("07-5-2013", "-")
    MaDate = DateSerial(tb(2), tb(1), tb(0))

  5. #5
    Membre actif Avatar de CristofMartins
    Homme Profil pro
    ICH-DEV
    Inscrit en
    Juillet 2012
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Suisse

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 140
    Points : 219
    Points
    219
    Par défaut
    Salut BBIL,
    Ta réponse peut être sympa, mais ça marche dans le cas ou la date n'existe pas ? Genre le 31 février ?

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    ..

    ben pour le 31-02-13- cela donne le 03 Mars 2013..

    mais je comprends pas ta question ? tu nous dis que ton fichier contient des dates .. pourquoi maintenant tu parle du 31 février ?

  7. #7
    Membre actif Avatar de CristofMartins
    Homme Profil pro
    ICH-DEV
    Inscrit en
    Juillet 2012
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Suisse

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 140
    Points : 219
    Points
    219
    Par défaut
    Ma variable contient une date théorique mais c'est tout simplement une string.
    A la base j'ai trois cellules. la première pour le jour deuxième pour le mois et 3ème pour l'année. Je prends les trois cellules et je les mets ensemble dans une string et ca me donne 01-02-2013. Je ne peux pas convertir cette valeur en date parce que ma variable sera utilisé dans un userform où il y a une textbox pour le jour l'autre pour le mois et l'autre pour l'année pour que l'utilisateur puisse modifier la date. Donc c'est pour sa que je pose cette question.

  8. #8
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 674
    Points
    18 674
    Par défaut

    Bonjour.

    Voir l'aide de la fonction IsDate


    _______________________________________________________________________________

    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion …


  9. #9
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 526
    Points : 16 463
    Points
    16 463
    Par défaut
    Bonjour
    Citation Envoyé par CristofMartins Voir le message
    Salut,
    Oui mais c'est pas vraiment ce qu'il me faut.
    Ce je cherche vraiment c'est comment trouver le premier "-" et prendre tout ce qu'il y a avant et trouver le deuxième prendre ce qu'il y a entre les deux "-" et prendre le reste..
    Effectivement pourquoi ne pas passer par Tombouctou pour aller de Genève à Rome !

    Avec la solution de Bbil, il suffit de tester si le mois (3 dans l'exemple) est différent de celui saisi (2) pour en déduire que la date n'existant pas, elle a glissé.

  10. #10
    Membre actif Avatar de CristofMartins
    Homme Profil pro
    ICH-DEV
    Inscrit en
    Juillet 2012
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : Suisse

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

    Informations forums :
    Inscription : Juillet 2012
    Messages : 140
    Points : 219
    Points
    219
    Par défaut
    Exactement 78chris.
    Lol, non pour finir j'ai quand même pris la solution de BBil.
    Merci beaucoup à tous.

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

Discussions similaires

  1. [MySQL] Manipulation d'une chaine de caractère.
    Par Tanoak_LaCapuche dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 23/07/2012, 10h01
  2. Réponses: 13
    Dernier message: 12/07/2012, 12h13
  3. Manipuler une chaine de caractère.
    Par jamsgoodon dans le forum Débuter
    Réponses: 1
    Dernier message: 14/04/2011, 20h56
  4. Comment manipuler une chaine de caractère
    Par belmehdi17 dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 11/03/2008, 17h03
  5. Réponses: 2
    Dernier message: 06/12/2002, 08h50

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