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 :

[VBA] problème de format de date


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut [VBA] problème de format de date
    Bonjour,

    Je souhaite modifier le format de date qui se trouve dans une colonne pour n'avoir que le jour (lundi, mardi,...) en format texte. On peut le faire avec le format de cellule mais le "texte" qui reste liée est un chiffre... Cela me pose problème pour faire une recherche ou un nb.si avec comme critére le jour.

    Un peu compliqué à comprendre...

    Merci d'avance de votre aide

  2. #2
    Membre confirmé Avatar de Micky58
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    108
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : Belgique

    Informations forums :
    Inscription : Avril 2007
    Messages : 108
    Par défaut Rép
    Bonjour tarmin,
    J'ai la solution pour que le nombre s'affiche en texte:
    tu mes le format "personnaliser" et tu indiques dans le champs "type" jjjj et le jour s'affichera.
    Bonne journée

  3. #3
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut
    Oui je sais mais même si le jour s'affiche il reste en format "date" ce qui m'empêche de faire une recherche ou un somme.si sur le critère "lundi" ou "mardi"...

  4. #4
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    utilise

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Function nj(x As Date) As String
    nj = Format(DateSerial(2006, 12, 31), "dddd")
     
    End Function

  5. #5
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut
    Merci mais peux-tu me donner le code en entier et me guider dans la procédure....

    Merci

  6. #6
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    le code entier serait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    Function nj(x As Variant) As String
    If IsDate(x) Then
    nj = Format(x, "dddd")
    Else
    nj = "#Erreur#"
    End If
    End Function
    tu peux l'employer de la facon suivante
    si(nj(madate)="dimanche";...

  7. #7
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut
    En fait, je n'ai encore jamais fait de macro !!! Il me faudrait donc plus de détail stp...

    Merci

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    faire altf11
    insertion module
    coller la fonction
    tu disposes d'une fonction supplémentaire sous excel

  9. #9
    Membre confirmé
    Inscrit en
    Janvier 2006
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 113
    Par défaut
    Merci pour les infos.

    Je n'ai jamais utilisé l'instruction Function et ne sais pas si c'est adapté à mon problème. Je vous explique ce que je dois faire.

    J'ai deux onglets avec des tableaux. Dans le premier j'ai une liste de personne avec les jours de maladie. Dans le second, je dois répertorier le nombre de lundi, mardi,... où chaque personne a été malade. Je souhaite automatiser cela avec des formules ou du code. Pour ce faire j'ai trouvé une formule qui va me compter le nombre de lundi de maladie pour la personne choisi (2 critères). Le problème c'est que ça marche très bien si je "triche" et que je tape le jour de la semaine dans mon premier tableau mais si c'est une date (en format jjj) ça ne fonctionne pas.

    Avec ces précisions, pouvez-vous me dire si le code que vous m'avez donné est correct ?

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

Discussions similaires

  1. Problème de format de date par défaut
    Par anitshka dans le forum Langage
    Réponses: 4
    Dernier message: 31/07/2006, 12h22
  2. Problème de format de date
    Par pilou0013 dans le forum Access
    Réponses: 2
    Dernier message: 11/06/2006, 22h56
  3. [VB.net] problème de format de date
    Par cladsam dans le forum Windows Forms
    Réponses: 4
    Dernier message: 11/10/2005, 18h27
  4. [VBA] Pb de format des dates dans un état
    Par linda15975 dans le forum IHM
    Réponses: 45
    Dernier message: 21/06/2005, 14h49
  5. Problème de Format de date
    Par titititi007 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 18/06/2003, 08h19

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