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 :

Récupérer le numéro du mois à partir de son nom


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Femme Profil pro
    apprentie
    Inscrit en
    Février 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : apprentie
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 37
    Points : 19
    Points
    19
    Par défaut Récupérer le numéro du mois à partir de son nom
    Bonjour,

    Je souhaite recuperer le nom du mois à partir de son num, j'ai trouvé cette fonction sur internet

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Function MonthName( _
       ByVal Month As Integer, _
       Optional ByVal Abbreviate As Boolean = False _
    ) As String
    Dim thisMonth As Integer
    Dim name As String
    thisMonth = 4
    ' Set Abbreviate to True to return an abbreviated name.
    name = MonthName(thisMonth, True)
    ' name now contains "Apr".
    Mais Visual basic NE RECONNAIT pas cette Reference, j'ai essayé de chercher dans bibliotheque pour ajouter sans succés.
    Merci de votre aide
    Cdlt,
    sabine

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonjour,,
    Sans savoir de quelle référence tu parles, évites déjà d'employer, pour tes variables, des mots clés réservés "Dim name As String", changes de nom même si ce n'est pas ta problématique.

  3. #3
    Membre à l'essai
    Femme Profil pro
    apprentie
    Inscrit en
    Février 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : apprentie
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 37
    Points : 19
    Points
    19
    Par défaut Récupérer le numéro du mois à partir de son nom
    La fonction MonthName est une fonction qui existe deja dans VB(elle retourne automatiquement le nom du mois)
    voir lien suivant :
    http://msdn.microsoft.com/fr-fr/libr...(v=vs.80).aspx
    il faut donc cocher dans reference de visualBasic Un fichier DLL mais je ne sais pas le quel pour pouvoir utiliser cette fonction dans mon code.

    avez vous une solution, ou ayant dejà trouver une fonction qui recupere le non du mois a partir de son num qui marche sur vb ?
    Merci de votre help
    Cdlt,
    Saabine

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Je conçois ce que tu dis mais tel n'est pas mon propos, relis mon Post. Pour la référence à cocher, quelqu'un te répondra certainement.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par sabrine1311 Voir le message
    Bonjour,

    Je souhaite recuperer le nom du mois à partir de son num, j'ai trouvé cette fonction sur internet

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Function MonthName( _
       ByVal Month As Integer, _
       Optional ByVal Abbreviate As Boolean = False _
    ) As String
    Dim thisMonth As Integer
    Dim name As String
    thisMonth = 4
    ' Set Abbreviate to True to return an abbreviated name.
    name = MonthName(thisMonth, True)
    ' name now contains "Apr".
    Mais Visual basic NE RECONNAIT pas cette Reference, j'ai essayé de chercher dans bibliotheque pour ajouter sans succés.
    Merci de votre aide
    Cdlt,
    sabine
    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
    Public Function MonthName(MyMonth As Integer, Optional Abbreviate As Boolean = False) As String
    Dim Mois()
    Dim MoisAbj()
    Mois = Array("", "Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre")
    MoisAbj = Array("", "Janv", "Févr", "Mars", "Avr", "Mai", "Juin", "Juil", "Août", "Sept", "Oct", "Nov", "Déc")
    If Abbreviate = False Then MonthName = Mois(MyMonth) Else MonthName = MoisAbj(MyMonth)
    End Function
     
    Sub test()
     
    Dim moisname As String
    Dim moisname2 As String
    moisname = MonthName(12)
    moisname2 = MonthName(2, True)
    ' name now contains "Apr".
    End Sub

  6. #6
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 272
    Points
    11 272
    Par défaut
    Salut, curieux problème car par défaut cela fonctionne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Option Explicit
     
    Private Function NomMois(ByVal iMois As Integer, _
            Optional ByVal bAbreviation As Boolean = False) As String
    Dim sNomMois As String
        sNomMois = MonthName(iMois, bAbreviation)
        NomMois = sNomMois
    End Function
     
    Sub Test()
      Debug.Print NomMois(7, True)
      Debug.Print NomMois(7, False)
    End Sub

  7. #7
    Membre à l'essai
    Femme Profil pro
    apprentie
    Inscrit en
    Février 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : apprentie
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 37
    Points : 19
    Points
    19
    Par défaut
    Bonjour,
    Merci à vous 2 pour vos réponses!
    j'ai testé que la premiere,
    Rudrupt, cela fonctionne parfaitement.
    Cdlt,
    sabine

  8. #8
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    12 936
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12 936
    Points : 28 932
    Points
    28 932
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Comme te l'as écrit Philippe (kiki29) la fonction MonthName est nativement présente dans VBA et donc en créant une fonction portant le même nom et de plus utiliser des variables avec des noms réservés comme te l'a fait remarquer Dominique, tu multiplies les problèmes.
    Essaye cette ligne de code dans une nouvelle procédure et dans un nouveau classeur, tu verras que cela fonctionne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox MonthName(10, True)

  9. #9
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Citation Envoyé par sabrine1311 Voir le message
    La fonction MonthName est une fonction qui existe deja dans VB(elle retourne automatiquement le nom du mois)
    voir lien suivant :
    http://msdn.microsoft.com/fr-fr/libr...(v=vs.80).aspx
    il faut donc cocher dans reference de visualBasic Un fichier DLL mais je ne sais pas le quel pour pouvoir utiliser cette fonction dans mon code.
    Saabine
    Ton lien porte sur l'utilisation de la fonction dans VB2005. Il s'agit de VB.net et non pas de VBA; même si c'est probablement le même code machine, ou presque, que l'on retrouve derrière les deux fonctions. En effet, dans cette version de VB.net, (VB2005) il faut avoir une référence à l'assembly (une dll) .net VisualBasic. Comme d'autres répondeurs te l'ont signalé, la fonction est native dans VBA. Dès que tu vois 2005, 2008, 2010, 2012 ou 2013; il s'agit automatiquement de VB.net et non pas de VBA ou de VB6. Les dll de VB.net et du Framework .net ne peuvent pas être utilisées par VB6 ou VBA sans quelques acrobaties un peu ésotériques.

  10. #10
    Membre à l'essai
    Femme Profil pro
    apprentie
    Inscrit en
    Février 2014
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : apprentie
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Février 2014
    Messages : 37
    Points : 19
    Points
    19
    Par défaut
    Bonjour,

    Je vous remercie pour cette explication,j'ai compris pourquoi ca ne marchait pas "Monthname" maintenant !
    J'ai utilisé la solution de "rdurupt" est cela marche!
    Cordialement,
    sabine

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

Discussions similaires

  1. Récupérer un widget à partir de son nom
    Par kenshi240683 dans le forum GTK+ avec C & C++
    Réponses: 2
    Dernier message: 27/05/2008, 14h18
  2. Réponses: 9
    Dernier message: 26/09/2007, 16h18
  3. Récupérer le numéro du mois à partir de son nom
    Par ceuce dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 13/09/2007, 16h44
  4. Récupérer une variable à partir de son nom ...
    Par CynO dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 13/10/2005, 16h59
  5. Réponses: 3
    Dernier message: 24/09/2004, 21h21

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