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 :

énumérer les multiples d'un nombre [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 36
    Par défaut énumérer les multiples d'un nombre
    Bonjour à tous, j'aimerais pouvoir énumerer tout les multiples d'un nombre, est ce possible?
    Voici ou j'en suis :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    For i = a To d - 1
        If d Mod i = 0 Then
        lbchiffre1.Caption = i
        End If
        Exit For
        Next
               a = a + 1
    Mais j'aimerais rajouter If d Mod i = 0 'OU un nombre entier Then
    en clair j'aimerais que si D = 15 j'ai d'afficher 1,3,5
    Si vous avez des idées..
    Merci

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

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

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonjour,
    si lbchiffre1 est un label

    Pas testé, essayes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim tb(), x As Long
    x = 0
    For i = a To d - 1
      If d Mod i = 0 Then
       x = x + 1: ReDim Preserve tb(x)
     End If
    Next
    lbchiffre1.Caption = Join(tb, ",")
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 36
    Par défaut
    Merci de ta réponse, malheureusement cela ne marche pas .. ça affiche deux virgules à la suite

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

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

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    remplaces cette ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
       x = x + 1: ReDim Preserve tb(1 To x)
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  5. #5
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 36
    Par défaut
    toujours le meme probleme voici le code :
    sachant que x = 15 dans mon projet
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Dim tb(), p As Long
        x = 0
        For i = 1 To x - 1
        If x Mod i = 0 Then
         p = p + 1: ReDim Preserve tb(1 To p)
        End If
        Next
        lbchiffre3.Caption = Join(tb, ",")
    End Sub
    merci de ton aide !

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

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

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    je ne fais que des conn.., j'ai oublié le principal
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     ......
     If d Mod i = 0 Then
       x = x + 1: ReDim Preserve tb(1 To x)
       tb(x) = i
     End If
    .....
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

  7. #7
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 36
    Par défaut
    Merci beaucoup !!

  8. #8
    Expert éminent
    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
    Par défaut
    Bonjour !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Sub Demo()
         Const N = 15
              S$ = "1"
              D% = 1
        While D + 1 < N
              D = D + 1
              If N Mod D = 0 Then S = S & ", " & D
        Wend
              MsgBox S
    End Sub
    _________________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …

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

Discussions similaires

  1. Fonction qui renvoit les multiples d'un nombre!
    Par calvin_sd dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 10/07/2009, 18h45
  2. Trouvez les multiples d'un nombre
    Par virtuadrack dans le forum C++
    Réponses: 3
    Dernier message: 20/04/2009, 00h58
  3. Réponses: 3
    Dernier message: 13/12/2005, 09h53
  4. Réponses: 5
    Dernier message: 18/02/2005, 16h36

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