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 :

Réouvrir et modifier un USERFORM


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2014
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2014
    Messages : 1
    Par défaut Réouvrir et modifier un USERFORM
    Bonjours,
    je débute dans la programmation de macro et j’aurais besoin d’aide pour poursuivre ma démarche.

    Mon fichier (ci-joint) et une base de données de produits que je rentre à l’aide d’un USERFORM,
    Je cherche maintenant à pouvoir modifier quelques éléments de ma base de données, en double-cliquant sur la référence de mon produit.

    Ex : j’ai compléter une ligne dans ma base de donnée grâce à mon userform, je vois donc apparaitre dans mon tableau une réf. de produit, une désignation, une marque, un nom de produit, un nom de produit équivalent, un prix, etc…
    Je souhaiterai, en double-cliquant sur la réf. du produit, rouvrir l’userform et pouvoir modifier les éléments renseignés. (ex : le prix)

    Ayant déjà navigué pas mal sur internet à la recherche de réponses, je sais que des questions similaires on déjà était poser sur certains forum, cependant je ne suis pas arrivé à adapter les codes à mon fichier.

    Merci d’avance pour votre aide.
    Fichiers attachés Fichiers attachés

  2. #2
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    271
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2014
    Messages : 271
    Par défaut
    Bonjour,

    Utilises beforedoubleclick puis UserForm1.Show

    Cordialement

  3. #3
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Bonjour le fil, bonjour le forum,

    En pièce jointe ton fichier modifié. J'ai fait comme disait Had, un double-clic dans la colonne 1 d'une ligne éditée pour Modifier, un clic sur le bouton Nouvelle Réf. pour Ajouter.
    Regarde la propriété [Tag] de chaque textbox. Elle contient le numéro de la colonne qui doit recevoir la donnée. Cela simplifie considérablement le code puisqu'on peut boucler. J'ai supprimer le bouton OK qui faisait doublon...
    J'ai déclaré une variable LI publique. Elle renvoie la première ligne vide de la colonne A si on clique sur le bouton ou la ligne de la cellule double-cliquée.
    Le texte du bouton est Ajouter si l'on clique sur le bouton, Modifier si l'on double-clique dans une cellule éditée de la colonne A.
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    Private Sub UserForm_Initialize()
    Dim I As Byte
     
    Me.CommandButton3.Caption = "Ajouter"
    With Me.ComboBox1
        .AddItem 10
        .AddItem 20
        .AddItem 50
        .AddItem 100
        .AddItem 200
    End With
    With Me.ComboBox2
        .AddItem "FSB"
        .AddItem "FMA"
        .AddItem "ACH"
        .AddItem "STP"
    End With
    If Sheets("Base de Données").Cells(LI, 1).Value <> "" Then
        For I = 1 To 11
            Me.Controls("TextBox" & I).Value = Sheets("Base de Données").Cells(LI, CInt(Me.Controls("TextBox" & I).Tag)).Value
        Next I
        Me.ComboBox1.Value = Sheets("Base de Données").Cells(LI, 13).Value
        Me.CommandButton3.Caption = "Modifier"
    End If
    End Sub
     
    Private Sub CommandButton3_Click()
    Dim I As Byte
     
    For I = 1 To 11
        Me.Controls("TextBox" & I).Text = UCase(Me.Controls("TextBox" & I).Text)
        Cells(LI, CInt(Me.Controls("textBox" & I).Tag)).Value
    Unload Me
    RefProduit.Show
    End Sub
     
    Private Sub CommandButton2_Click()
    Unload RefProduit
    End Sub
    Pas compris la l'intérêt de la ComboBox2 puisqu'elle n'apparaît pas dans le tableau ?

    L
    e fichier :
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Recuperer les données d'une feuille puis la modifier via userform
    Par reinruof77 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 26/06/2014, 22h29
  2. modifier echelle userform
    Par panda78 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 31/07/2012, 13h25
  3. Modifier le titre d'un userForm
    Par laurentabj dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/07/2007, 10h58
  4. [VBA-E] modifier une userform
    Par cwain dans le forum Macros et VBA Excel
    Réponses: 57
    Dernier message: 10/04/2006, 16h57

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