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 :

Afficher les selections multiple d'une Listbox dans une seule cellule en séparant par une virgule


Sujet :

Macros et VBA Excel

  1. #41
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Merci de commencer un nouveau sujet pour le problème des boutons.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  2. #42
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2019
    Messages : 46
    Points : 13
    Points
    13
    Par défaut
    Je vais faire ça pas de soucis pour l'histoire de boutons. Quelqu'un peut-il m'expliquer comment il a fait pour résoudre le problème de ce topic ci du coup ? Je suis ravis que cela soit résolu mais je suis curieux et j'aimerai pouvoir le refaire =D
    Je vais aller lire ce que Marcel m'a donné comme lien pour progresser peut être que je trouverai tout seul

  3. #43
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par Sparfell29 Voir le message
    [...]Je suis ravis que cela soit résolu mais je suis curieux et j'aimerai pouvoir le refaire[...]
    C'est le problèmes des solutions plaquées sans explications alors que d'autres intervenants ont eu le respect et la patience de t'expliquer les choses pour que tu gagnes en autonomie. On ne peut pas avoir le beurre, l'argent du beurre et le cul de la crémière...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  4. #44
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    1 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 1 369
    Points : 2 156
    Points
    2 156
    Par défaut
    Bonjour,

    Pour remettre à zéro la LIstBox (fiche vierge)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For J = 0 To Me.ListBox1.ListCount - 1: Me.ListBox1.Selected(J) = False: Next J
    En PJ, un exemple de Création,Modif,Suppression (le bouton Ajout crée une fiche vierge)

    Boisgontier
    Fichiers attachés Fichiers attachés

  5. #45
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2019
    Messages : 46
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par Pierre Fauconnier Voir le message
    C'est le problèmes des solutions plaquées sans explications alors que d'autres intervenants ont eu le respect et la patience de t'expliquer les choses pour que tu gagnes en autonomie. On ne peut pas avoir le beurre, l'argent du beurre et le cul de la crémière...
    C'est justement pour ca que je ne m'en sers pas bêtement mais que j'essaye de décortiquer morceaux par morceaux ce qui a été fait pour le comprendre. Vous m'avez tous bien aidé et tout ce que tu m'appris m'a servi ou me servira.
    Tu n'as pas perdu ton temps pour que je me jette sur la première correction qui ne me demande pas de boulot. Ma démarche est sincère et j'ai vraiment à coeur de comprendre je vais d'ailleurs me servir de tout ce qui m'a été expliqué ici pour se faire.
    Ce n'est que ma première semaine de stage et j'ai déjà appris à faire des choses dont je ne soupçonnais même pas l'existence, un grand merci à tous

  6. #46
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2019
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Mai 2019
    Messages : 46
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par boisgontierjacques Voir le message
    Bonjour,

    Pour remettre à zéro la LIstBox (fiche vierge)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For J = 0 To Me.ListBox1.ListCount - 1: Me.ListBox1.Selected(J) = False: Next J
    En PJ, un exemple de Création,Modif,Suppression (le bouton Ajout crée une fiche vierge)

    Boisgontier
    Merci bien je regarde ça =D

  7. #47
    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 773
    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 773
    Points : 28 637
    Points
    28 637
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Exemple d'utilisation dans cette contribution USERFORM CRUD - Version 3,2 avec fichier à télécharger.
    Nouvelle version de la contribution titrée USERFORM - Créer, Consulter, Modifier et Supprimer des enregistrements à l'aide d'un formulaire

    Toutes les explications s'y trouvent.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  8. #48
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Septembre 2013
    Messages
    1 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2013
    Messages : 1 369
    Points : 2 156
    Points
    2 156
    Par défaut
    Bonsoir,

    Nouvelle version

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    Option Compare Text
    Dim nomtableau
    Private Sub UserForm_Initialize()
      nomtableau = "produit"
      Me.enreg = Range(nomtableau).Rows.Count + 1
      Me.Id = Application.Max(Range(nomtableau).Columns(1)) + 1
      Tbl = Range(nomtableau).Value
      Tri Tbl, LBound(Tbl), UBound(Tbl), 1
      Me.Recherche.List = Tbl
      Me.ListBox1.List = [Tableau2].Value
    End Sub
     
    Private Sub Recherche_Change()
      Me.enreg = Application.Match(Val(Me.Recherche), Range(nomtableau).Columns(1), 0)
      Me.Id = Me.Recherche
      For i = 2 To 3
        Me("TextBox" & i) = Range(nomtableau).Item(enreg, i)
      Next i
      Me.Textbox4 = Range(nomtableau).Item(enreg, 4)
      Me.Textbox5 = Range(nomtableau).Item(enreg, 5)
      Me.Textbox6 = Range(nomtableau).Item(enreg, 6)
      Me.Textbox7 = Range(nomtableau).Item(enreg, 7)
      For i = 9 To 11
        Me("TextBox" & i) = Range(nomtableau).Item(enreg, i)
      Next i
      '--- services
       temp = Range(nomtableau).Item(enreg, 8)
       a = Split(temp, ",")
       For j = 0 To Me.ListBox1.ListCount - 1: Me.ListBox1.Selected(j) = False: Next j
       If UBound(a) >= 0 Then
            For j = 0 To Me.ListBox1.ListCount - 1
               If Not IsError(Application.Match(Me.ListBox1.List(j), a, 0)) Then
                   Me.ListBox1.Selected(j) = True
               Else
                   Me.ListBox1.Selected(j) = False
               End If
             Next j
        End If
    End Sub
     
    Private Sub B_valid_Click()
      enreg = Me.enreg
      Range(nomtableau).Item(enreg, 1) = Val(Me.Id)
      For i = 2 To 3
        Range(nomtableau).Item(enreg, i) = Me("TextBox" & i)
      Next i
      temp = Range(nomtableau).Item(enreg, 4): If IsDate(temp) Then temp = CDate(temp)
      Range(nomtableau).Item(enreg, 4) = temp
      temp = Range(nomtableau).Item(enreg, 5): If IsDate(temp) Then temp = CDate(temp)
      Range(nomtableau).Item(enreg, 5) = temp
      Range(nomtableau).Item(enreg, 6) = Me.Textbox6
      Range(nomtableau).Item(enreg, 7) = Me.Textbox7
      For i = 9 To 11
        Range(nomtableau).Item(enreg, i) = Me("TextBox" & i)
      Next i
      '-- services
       temp = ""
       For i = 0 To Me.ListBox1.ListCount - 1
          If Me.ListBox1.Selected(i) = True Then temp = temp & Me.ListBox1.List(i) & ","
       Next i
       Range(nomtableau).Item(enreg, 8) = temp
       raz
       UserForm_Initialize
    End Sub
     
    Private Sub B_sup_Click()
      If MsgBox("Etes vous sûr de supprimer " & Me.Nom & "?", vbYesNo) = vbYes Then
         Range(nomtableau).Rows(Me.enreg).Delete
         Me.Recherche.List = Range(nomtableau).Value
      End If
    End Sub
     
    Private Sub B_ajout_Click()
      raz
      Me.Id = Application.Max(Range(nomtableau).Columns(1)) + 1
      Me.enreg = Range(nomtableau).Rows.Count + 1
    End Sub
     
    Sub raz()
      For i = 2 To 7
         Me("TextBox" & i) = ""
      Next i
      For i = 9 To 11
         Me("TextBox" & i) = ""
      Next i
      For j = 0 To Me.ListBox1.ListCount - 1: Me.ListBox1.Selected(j) = False: Next j
    End Sub
     
    Private Sub B_suivant_Click()
     If Me.Recherche.ListIndex < Me.Recherche.ListCount - 1 Then
       Me.Recherche.ListIndex = Me.Recherche.ListIndex + 1
      End If
    End Sub
     
    Private Sub b_précédent_Click()
      If Me.Recherche.ListIndex > 0 Then
        Me.Recherche.ListIndex = Me.Recherche.ListIndex - 1
      End If
    End Sub
    Boisgontier
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.
Page 3 sur 3 PremièrePremière 123

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/06/2017, 13h55
  2. Réponses: 0
    Dernier message: 24/08/2007, 12h27
  3. Réponses: 5
    Dernier message: 27/04/2007, 15h06
  4. afficher les champs null de deux tables dans un select
    Par poil dans le forum Langage SQL
    Réponses: 2
    Dernier message: 27/09/2005, 15h05
  5. [C#]Sauvegarde d'une selection multiple d'une listbox?
    Par onouiri dans le forum ASP.NET
    Réponses: 7
    Dernier message: 29/04/2004, 17h16

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