Sauvegarder userform dans une forme pour la réouvrir plus tard

Pasbleau

XLDnaute Nouveau
Bonjour à tous

J'ai quelques notions en vba, mais je ne sais pas si ce que je souhaite réaliser est réalisale.

Je dispose d'une userform qui se compose comme un formulaire. On entre des valeurs dans plusieurs textbox, combobox ... et lorqu'on clique sur "valider", ces valeurs se copient dans un tableau.

Seulement, en cas d'erreur de saisie, j'aimerais pour modifier une ligne du tableau repasser par mon userform. En gros, j'aimerais avoir au début de chaque ligne un lien (une forme, un rectangle par exemple) qui lorsque je clique dessus m'ouvre mon userform déja remplie avec les valeurs présentent dans cette ligne. Et que lorsque je modifie cette nouvelle userform, ça me modifie les valeurs déja présente dans le tableau (sans me rajouter une nouvelle ligne dans le tableau).

J'espere avoir été claire, voici mon programme simplifié en pièce jointe.

Merci !
 

Pièces jointes

  • Formulaire clients.xlsm
    20.4 KB · Affichages: 76
  • Formulaire clients.xlsm
    20.4 KB · Affichages: 86
  • Formulaire clients.xlsm
    20.4 KB · Affichages: 91
C

Compte Supprimé 979

Guest
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Bonsoir Pasbleau

Ce que tu demandes de faire avec un objet (Elipse) est difficilement réalisable
En revanche par un double clique sur une cellule, là ok

A toi de nous dire si tu veux vraiment utiliser une forme !?

A+
 

Fo_rum

XLDnaute Accro
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Bonsoir,

un essai avec les formes.
Mais comme Bruno45, je pencherais plutôt pour le double clic (ici aussi dans l'essai).
 

Pièces jointes

  • OuverturesUsF.xls
    48.5 KB · Affichages: 77

Pasbleau

XLDnaute Nouveau
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Oui, un double clique sur la cellule peut me convenir ...
Merci fo_rum pour ton code.
Mais au lieu de double cliquer dans la première cellule, peux on faire en sorte de double cliquer sur n'importe quelle cellule de la ligne ?

Et je pense qu'il faut ajouter un "unload userform1" à ton code, car une fois que je modifie une ligne, je ne peux plus ajouter de nouvelle ligne à mon tableau, et ça doit rester le but ! (voir mon premier fichier joint).

Et, dernière demande ... peux tu me commenter ton code pour que je l'adapte ? J'ai un peu de mal à tout saisir ...

Merci beaucoup pour votre aide
 

Pasbleau

XLDnaute Nouveau
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

De plus, dans le fichier de fo_rum, il y a un message d'erreur lorsqu'on clique sur le rectangle pour lancer l'userfom1 grace à la macro :
sub use()
userfom1.show
end sub

Cette erreure apparait lorsqu'on clique sur le rectangle en premier, sans avoir cliqué sur les elipses avant ..
 

Fo_rum

XLDnaute Accro
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Re,

De plus, dans le fichier de fo_rum, il y a un message d'erreur lorsqu'on clique sur le rectangle pour lancer l'userfom1 grace à la macro :
sub use()
userfom1.show
end sub

Cette erreure apparait lorsqu'on clique sur le rectangle en premier, sans avoir cliqué sur les elipses avant ..
Comme je m'attendais à cette remarque :
c'est normal, la variable l n'est pas initialisée (première ligne non vide de la colonne B).

Avec le double clic sur une ligne, tu n'as pas besoin du bouton (je l'ai quand même laissé)
 

Pièces jointes

  • DoubleClicOuvertureUsF.xls
    37 KB · Affichages: 64

Pasbleau

XLDnaute Nouveau
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Merci beaucoup, mais je n'arrive pas à me dépatouiller avec ton code. Je l'ai copié dans mon fichier et j'ai toujours un message d'erreur me disant : erreur d'exécution 2147024809 Objet spécifié introuvable, et dans le débogueur, ça me met en surbrillance userform1.

Je ne comprends pas ...

Je vous envoie mon vrai fichier, si vous pouvez le regarder un petit peu pour comprendre mon erreur ...

Merci
 

Pièces jointes

  • BSD exceldownloads.xlsm
    114.1 KB · Affichages: 157
C

Compte Supprimé 979

Guest
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Bonjour Pasbleau,

Je pense que ton problème vient de la référence manquante
Dans VBE -> menu Outils -> Référence -> décocher [MANQUANT]

A+
 
C

Compte Supprimé 979

Guest
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Re,

Désolé de ne pas avoir suivi la conversation, trop de boulot :eek:
A l'initialisation de ton USF, tu remplis tes TextBox
Code:
Private Sub UserForm_Initialize()
    For n = 1 To 4
        Controls("Textbox" & n) = Cells(l, n + 1)
    Next
End Sub
Sauf que le TextBox2 n'existe pas et à été remplacé par le Textbox69
Il suffit de modifier le nom !

A+
 
C

Compte Supprimé 979

Guest
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Re,

Désolé, je n'avais pas suivi tout le fil :eek:
Voici ton fichier modifié

1) j'ai modifié le nom de ta variable pour la ligne, car "l" peut être confondu avec "1"
2) J'ai changé le code de ton bouton "Valider"

Tout est expliqué dans le code ;)

A+
 

Pièces jointes

  • Pasbleau_Suivi des Déchets.xlsm
    132.1 KB · Affichages: 196

Pasbleau

XLDnaute Nouveau
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Bonjour.

Merci BrunoM45 de prendre du temps. Ton code à l'air de bien m'avancer, mais il a des bugs que je n'arrive pas a résoudre.
De plus, seuls les textbox et combobox jusqu'à la colonne '"4" se remplissent automatiquement alors que je souhaiterez que toute se remplissent automatiquement avec les valeurs du tableau.
 
C

Compte Supprimé 979

Guest
Re : Sauvegarder userform dans une forme pour la réouvrir plus tard

Salut Pasbleau,

Ne compte pas sur moi pour faire ton boulot à ta place ;)
Il suffit d'ajouter des boucles selon les objets à complèter

A+
 

Discussions similaires

Réponses
2
Affichages
299