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 :

Ajouter Données de UserForm dans une Feuille Excel [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2021
    Messages : 6
    Par défaut Ajouter Données de UserForm dans une Feuille Excel
    Salut à tous,

    Je suis actuellement en train d'écrire une fonction permettant de parcourir tout les objets de mes UserForm pour ne garder que les valeurs des Textbox et des Checkbox pour ainsi les afficher dans une Feuille excel en cliquant sur un bouton.

    Dans chacune de mes UserForm j'ai un bouton "CommandButtonPanier" qui, lorsqu'on clique dessus, affiche les valeurs "CrtlText" et "Qt" dans une feuille.
    Le problème c'est que je n'arrive pas à les faire apparaître sur ma feuille.

    Je débute en VBA c'est pour cela que je requierts votre aide !

    Voici le code :

    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
    Public Sub AjouterPanier(NomUsf As UserForm)
     
        For Each ctrl In NomUsf.Controls 'parcourir tous les objets
     
            If TypeName(ctrl) = "Checkbox" Then 'Si l'objet parcouru est un checkbox
     
                'enregistrer sa valeur
                CtrlText = NomUsf.Controls("Textbox" & Right(ctrl.Name, Len(ctrl.Name) - 8))
                Qt = CtrlText.Object.Value
     
                ' insertion dans la feuille du panier
                TypeName(ctrl) = "CommandButtonPanier"
                If CommandButtonPanier = True Then
     
                    Sheets("Panier").Range("A2").Value = CtrlText
                    Sheets("Panier").Range("C2").Value = Qt
     
                End If
            End If
        End If
    End Sub
    Merci beaucoup !

  2. #2
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 423
    Par défaut
    Bonjour,

    Quelque chose de ce genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Public Sub AjouterPanier(NomUsf As UserForm)
        Dim Ctrl As Control, k As Long
        For Each Ctrl In NomUsf.Controls 'parcourir tous les objets
            If TypeName(Ctrl) = "Checkbox" Then 'Si l'objet parcouru est un checkbox
                Sheets("Panier").Range("A2").Offset(k, 0).Value = "Checkbox " & Ctrl.Name
                Sheets("Panier").Range("C2").Offset(k, 0).Value = Ctrl.Value
                k = k + 1
            ElseIf TypeName(Ctrl) = "TextBox" Then
                Sheets("Panier").Range("A2").Offset(k, 0).Value = "Textbox " & Ctrl.Name
                Sheets("Panier").Range("C2").Offset(k, 0).Value = Ctrl.Value
                k = k + 1
            End If
        Next Ctrl
    End Sub
    Cordialement.

  3. #3
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2021
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2021
    Messages : 6
    Par défaut
    Merci pour votre réponse !

    Je viens d'essayer le code mails il ne fonctionne pas dans mon VBA, de plus il manque une condition d'ajouter les données cherchées en cliquant !

    Dois-je appeler cette fonction Module et le code de mes userform ?

    Je suis un peu perdu

    Cordialement,

  4. #4
    Expert confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2012
    Messages
    3 423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Juin 2012
    Messages : 3 423
    Par défaut
    Bonjour,

    Je crains de n'avoir pas compris votre problème. Il serait sans doute plus simple de joindre un fichier, ou des copies d'écran, pour montrer ce qu'il y a au départ et le résultat recherché.

    Cordialement.

  5. #5
    Membre expérimenté
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2013
    Messages
    122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2013
    Messages : 122
    Par défaut
    Bonjour
    Je travaille sur ce tutoriel, qui m'a l'air intéressant : https://fauconnier.developpez.com/tu...eau-structure/
    Cela pourrait répondre à votre problématique?

  6. #6
    Rédacteur/Modérateur


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

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

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 125
    Billets dans le blog
    131
    Par défaut
    Salut.

    Tu pourrais t'inspirer de ma réponse dans cette discussion. Je n'y explique pas comment ne reprendre que les textbox et chkbox, mais j'y détaille les 2 ou 3 lignes de code nécessaires au transfert de données d'un userform vers un tableau.

    Comme l'écrit fraflt69, je m'appuie bien sûr sur un tableau structuré, dont je parle en détails dans le tuto qu'il a cité dans sa réponse (au passage, merci fraflt69 pour ce relais vers mon tuto )
    "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...
    ---------------

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

Discussions similaires

  1. Ajouter un code VBA dans une feuille Excel par macro
    Par arnaud03 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/09/2015, 03h57
  2. [XL-2007] Ajout de données par userform dans une feuille excel
    Par Marc31 dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 13/12/2011, 14h41
  3. [XL-2003] Enregistrer les données des textbox dans une feuille excel
    Par monichou86 dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 06/01/2010, 15h24
  4. Ajout d'un bouton dans une feuille excel avec vba
    Par nsqualli dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/11/2008, 15h35
  5. Copier la liste Box d'un userForm dans une feuille Excel
    Par AVNAIM dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/05/2008, 15h12

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