Dupliquer une feuille modèle remplie avec UserForm (Formulaire)

Bonjour les amis,

Ma demande restera dans le cadre du possible et du temps que vous pourrez me consacré pour répondre a ma recherche, meme si au premier abord c'est un peu monstrueux

Voilà, j'ai une feuille modèle avec des champs.

Une seconde feuille qui contient un tableau récapitulatif.

Ma question:

est-il possible à partir d'un userForm de saisie d'informations, créer une copie d'un modèle qui se rempli avec les informations saisie dans le formulaire, et en même temps créer une nouvelle ligne dans le tableau récapitulatif avec les informations rempli.

Pour info le fichier contient : Une feuille Modèle / une feuille tableau de gestion/ une feuille de commandes/ déjà prêtes.

Le but et de remplir le formulaire et de générer , une nouvelle feuille à partir du modèle, rempli avec le formulaire de saisie.

dans le formulaire de saisie est-il possible de mettre certains champs en remplissage automatique selon le choix qu'on fait dans la liste déroulante comme dans l'image ci-dessous et que le nom et prénom saisie en dessus se reportent sur les deux du bas :

yzk0wfu

Merci d'avance pour vos réponses et investissement .

52modele.xlsm (48.59 Ko)

Salut,

Tu as beaucoup de questions et toutes ne sont pas très claires.

Je te montre déjà comment refermer ton UserForm lorsque tu cliques sur ‘’Fermer’’, comment remplir ta ComboBox ‘’Contrats’’ ave la liste de la feuille ‘’Commandes’’ de la colonne G et comment, lorsque tu choisis l’une de ces valeurs dans la ComboBox, les valeusr de la colonne H correspondantes viennent remplir ton TextBox ‘’ CreditsF’’.

Ca devrait te permettre d’avancer avec les autres objets identiques (tels que ton TextBox ‘’ HAnuelles’’).

Par la suite, pose moins de question à la fois et essaie d’être plus précis dans la description de ton problème, surtout en utilisant les noms des objets Excel, tel que je l’ai fait moi-même.

Cordialement.

51modele-v1.xlsm (52.52 Ko)

pose moins de question à la fois et essaie d’être plus précis dans la description de ton problème, surtout en utilisant les noms des objets Excel, tel que je l’ai fait moi-même.

Cordialement.

Oui j'avoue, j'ai posé trop de question a la fois . Merci pour le début, je vais essayer d’avancer, et de poser des question étape par étape a chaque fois que ça bloque :

En résumé j'essaie de faire ce qui suit

je clique sur formulaire = je remplis = je clique sur créer = la feuille modèle se duplique avec les infos saisie dans le formulaire et une ligne se créer dans la feuille dans le tableau de gestion )

C’est toujours sympa de dire si ce qui a déjà été réalisé convient ou non. Ainsi, est-ce que le remplissage de ta ComboBox à l’ouverture de ton UserForm, le remplissage du TextBox ‘’CreditsF’’ lors de la modification de ce même ComboBox et le fait que ton UserForm se referme lorsque tu cliques sur fermer t’est utile et est à ta convenance ?

Dans le fichier ci-joint, si tu ouvres ton UserForm, que tu remplis les champs ‘’Contrat’’, ‘’Interne’’, ‘’Nom’’ et ‘’Prénom’’ et que tu cliques sur ‘’Créer’’, ça te crée une nouvelle feuille renommée selon les noms et prénoms indiqués et ça complète les cellules H7 et H9.

Arrives-tu à compléter ce code sur la base de mes exemples ?

Amicalement.

45modele-v2.xlsm (53.68 Ko)

Merci Yvouille pour ton investissement, oui c'est exactement ce que je voulais faire jusque-là, et ton codage me convient je vais essayer de le compléter.

Ça marche très bien et je viens de compléter les champs manquant en suivant le début de ton code. Pour les pourcentages des contrats( Type : interne et externe) j'ai préféré mettre des ComboBox. Comment faire pour afficher le format % dans la ComboBox, et sur la feuille ça me met un message erreur. Idem pour le numéro de téléphone il me manque que ça pour la partie Informations Agent concernant ce UserForm. je te joins le fichier ci-joint

Bonjour

modification de la combobox a voir

Private Sub UserForm_Initialize()
    ComboBox1.List = Feuil4.Range("G2:I" & Feuil4.Range("G" & Rows.Count).End(xlUp).Row).Value
End Sub

Private Sub ComboBox1_Change()
   CreditsF.Value = ComboBox1.Column(1)
   HAnuelles.Value = ComboBox1.Column(2)
End Sub

A+

Maurice

Bonsoir Maurice,

Je dois remplacer quelle partie Maurice ? j'ai essayé j'ai une erreur vatiable non définie a moins que je l'ai placer là ou il ne fallait pas puis après le Userform se lance mais j'ai plus rien dans la ComboBox et les textBox de la partie tableau de gestion !!

Re-bonjour,

Dans le fichier ci-joint, je te montre comment résoudre ton problème de pourcent. Dans les propriétés du ComboBox, j’ai supprimé le RowSource et je charge les données par le code UserForm_Initialize.

A te relire.

32modele-v3.xlsm (63.21 Ko)

Re-bonjour,

Dans le fichier ci-joint, je te montre comment résoudre ton problème de pourcent. Dans les propriétés du ComboBox, j’ai supprimé le RowSource et je charge les données par le code UserForm_Initialize.

A te relire.

Parfait ça marche bien pour Contrat on vois bien le pourcentage et il se reporte bien sur la feuille, parcontre Interne et Externe, les pourcentage ne s'affiche pas désolé de t"embêter encore une fois je suis vraiment débutant en VBA. Mes connaissances son vraiment limitées

j'ai ça qui s'affiche

Dans le UserForm

60grnel

et dans la feuille :

3lsr9ch

Je pensais qu'avec mon modèle et mes explications, tu t'en sortirais

Cordialement.

51modele-v4.xlsm (56.28 Ko)

Je pensais qu'avec mon modèle et mes explications, tu t'en sortirais

Cordialement.

Je rêve j'ai fait la même chose que toi c'est a dire dupliquer ton code et changer le nom des ComboBox

For i = 3 To Sheets("Commandes").Range("G" & Rows.Count).End(xlUp).Row
    ComboBox1.AddItem Sheets("Commandes").Range("G" & i)
Next

For i = 2 To Sheets("Commandes").Range("E" & Rows.Count).End(xlUp).Row
    ComboBox4.AddItem Sheets("Commandes").Range("E" & i) * 100 & "%"
Next

For i = 2 To Sheets("Commandes").Range("E" & Rows.Count).End(xlUp).Row
    ComboBox5.AddItem Sheets("Commandes").Range("E" & i) * 100 & "%"
Next

For i = 2 To Sheets("Commandes").Range("E" & Rows.Count).End(xlUp).Row
    ComboBox6.AddItem Sheets("Commandes").Range("E" & i) * 100 & "%"

ça ne voulais pas marché ça me renvoyé accès refusé erreur d'excution 70, et avec ton fichier Magique le même code fonctionne sans problème bizarre la programmation

Franchement t'es fort mon ami et tous les mérites te reviennent c'est exactement ce que je souchetais faire.

je pense que pour la partie Tableau de bord c'est facile je partage le fichier avec le code qui aide a compléter la partie du bas du UserForm, dit moi juste s'il n y a pas d'erreur, ou si t'as des remarques.

65modele-v4.xlsm (57.07 Ko)

Dans les propriétés du ComboBox, j’ai supprimé le RowSource ........

As-tu fait cela ?

capture

Dans les propriétés du ComboBox, j’ai supprimé le RowSource ........

As-tu fait cela ?

Non j'ai rien touché, j'ai laissé comme tu les avais fait en passant par le code VBA, le RowSource est vide et tout fonctionne bien je te remercie infiniment

Je rêve j'ai fait la même chose que toi c'est a dire dupliquer ton code et changer le nom des ComboBox

ça ne voulais pas marché ça me renvoyé accès refusé erreur d'excution 70,

C'est parce que tu m'as écrit cela que je t'ai demandé si tu avais effacé le RowSource de tes deux ComboBox 5 et 6, non pas sur le fichier que je t'ai envoyé, mais sur celui de tes essais.

C'est parce que tu m'as écrit cela que je t'ai demandé si tu avais effacé le RowSource de tes deux ComboBox 5 et 6, non pas sur le fichier que je t'ai envoyé, mais sur celui de tes essais.

Ah je comprends mieux pourquoi j'ai eu toutes ces erreurs, l'erreur venais de là du coup, les RowSource été déjà remplis avec la liste source, ce qui à provoqué un conflit avec le code VBA qui indiquait la même chose sur mon fichier test v3. je suis bête

Bonjour

évite de faire des répétition a voir

Private Sub UserForm_Initialize()
Dim L&
    With Feuil4 ' = CodeName ou Sheets("Commandes")
        ComboBox1.List = .Range("G2:I" & .Range("G" & Rows.Count).End(xlUp).Row).Value
        For L = 2 To .Range("E" & Rows.Count).End(xlUp).Row
            ComboBox4.AddItem .Range("E" & L).Text
            ComboBox5.AddItem .Range("E" & L).Text
            ComboBox6.AddItem .Range("E" & L).Text
        Next L
    End With
End Sub

Private Sub ComboBox1_Change()
   CreditsF.Value = ComboBox1.Column(1)
   HAnuelles.Value = ComboBox1.Column(2)
End Sub

A+

Maurice

Bonjour Maurice

Merci beaucoup pour ta remarque et le partage de code, je l'ai testé et ça fonctionne très bien et sans soucis les deux solutions fonctionnent bien, je prendrai note de ton conseil autant avoir un code plus compacte qui fait le travail. Vous êtes géniaux Merci

Merci pour ton aide problème résolu.

Rechercher des sujets similaires à "dupliquer feuille modele remplie userform formulaire"