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 :

MsgBox modulable en fonction de variables


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    220
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Septembre 2007
    Messages : 220
    Par défaut MsgBox modulable en fonction de variables
    Bonjour à tous,

    dans ma feuille sont listés plusieurs produits, avec leur date de valeur.
    Pour une date de valeur j'aurai éventuellement plusieurs produits.

    Afin de comptabiliser le nombre de Date différentes qui puissent exister, je les ai stockées ou la variable Dim ValueDate(30) As String (il y en a 31 maximum par mois).

    Une fois le tout comptabilisé, je n'ai pas forcément 31 valeurs différentes, il se peut qu'il y en ait que 3.
    J'aurais donc, par exemple, ValueDate(0)=03/12/2007, ValueDate(1)=04/12/2007 et ValueDate(2)=05/12/2007

    Je voudrais qu'une MsgBox s'ouvre afin que l'utilisateur puisse voir quelles sont les dates pour lesquelles les produits vont par la suite être traités.

    Etant donné que je ne sais à l'avance combien de valeurs seront énoncées, est-il possible de créer une MsgBox avec ces variable, qui afficherait à l'utilisateurs "Il y a ce mois-ci 3 dates de valeurs différentes concernées : les 03/12/2007, 04/12/2007 et 05/12/2007" et que ce message s'adapte au nombre de valeurs différentes ?

    Merci beaucoup pour vos conseils.

  2. #2
    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
    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
    Function tmessage()
    Dim nb As Byte
    Dim matab(1 To 10) As Variant
    Dim boucle As Integer
    Dim montext As String
    Randomize
    nb = Int(Rnd() * 10)
    If nb = 0 Then nb = 5
    For boucle = 1 To nb
    matab(boucle) = Int(Rnd() * 100)
    Next boucle
    nb = 0
    For boucle = 1 To 10
    If IsEmpty(matab(boucle)) Then Exit For
    nb = nb + 1
    Next boucle
    montext = "ce mois ci " & nb & " mouvements" & Chr(10)
    For boucle = 1 To nb
    montext = montext & matab(boucle) & Chr(10)
    Next boucle
    MsgBox (montext)
    End Function

  3. #3
    Membre émérite
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Par défaut
    bonjour

    essaie le code suivant
    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
    Dim ValueDate(30) As String
    Dim strMsg As String
    Dim compteur As Byte
     
    compteur = 0
     
    For i = UBound(ValueDate) To LBound(ValueDate) Step -1
       If Not ValueDate(i) Like "" Then _
          strMsg = vbTab & ValueDate(i) & vbLf & strMsg: _
          compteur = compteur + 1
    Next i
    strMsg = "Il y a ce mois-ci " & compteur & _
       IIf(compteur > 1, " dates", " date") & _
       "  de valeurs différentes concernées :" & vbLf & strMsg
     
    MsgBox strMsg
    cordialement

    edit bonjour random

  4. #4
    Membre confirmé
    Inscrit en
    Septembre 2007
    Messages
    220
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Septembre 2007
    Messages : 220
    Par défaut
    Merci Merci Merci, vous êtes trop géniaux !!!
    Ca marche !!!
    A+

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

Discussions similaires

  1. Fonction Module sous Matlab : Taille variable
    Par Benji_Boxe dans le forum Mathématiques
    Réponses: 0
    Dernier message: 12/03/2014, 17h28
  2. [module time] fonction clock
    Par David38 dans le forum Général Python
    Réponses: 2
    Dernier message: 24/03/2006, 16h59
  3. appels de fonctions et variables intermediaires
    Par TabrisLeFol dans le forum Langage
    Réponses: 7
    Dernier message: 07/03/2006, 13h37
  4. Réponses: 5
    Dernier message: 19/09/2005, 20h58
  5. Réponses: 9
    Dernier message: 24/05/2005, 16h34

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