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 :

Modifier une ligne dans une base de donnée [Toutes versions]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Conducteur de travaux
    Inscrit en
    Décembre 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Conducteur de travaux

    Informations forums :
    Inscription : Décembre 2018
    Messages : 3
    Par défaut Modifier une ligne dans une base de donnée
    Bonjour à tous,

    Je me suis lancé dans la découverte du VBA en essayant de réaliser un tableau lié à une base de donnée suite à ma formation en prix de vente que j’effectue actuellement. Ne partant d’aucune connaissance dans ce langage mais ayant de bonne base sur Excel, je me suis lancé dans son apprentissage a l’aide de tuto, de forum et de beaucoup de réflexion…pour arriver à un résultat que je vous présente dans mon fichier joint.

    Malheureusement je bloque un petit peu dessus afin d’arriver au résultat souhaité. Je viens donc solliciter votre aide afin de m’aider, voire d’améliorer mon code.

    Voici l’explication de mon fichier :

    1) Le But :

    - La feuille 08_Sous-détails est mon tableau de sous-détail de prix

    - La feuille 09_BDD_Articles est comme son nom l’indique la base de donnée de mes prix

    - J’ai créé 4 boutons sur le coté de mon tableau (feuille 08_Sous-détails) dont le fonctionnement que je souhaite est celui-ci :

    Choix Articles : ouvre un UserForm composé d’une ComboBox pour me permettre de choisir mon article et de l’afficher dans le tableau avec ses données

    Créer Articles : ouvre un UserForm composé d’un TexBox qui me permet de créer un articles (juste son nom) et de l’ajouter à la base de donnée

    Modifier Articles : permet de modifier les données de l’article affiché dans mon tableau (en D1, choisi avec le bouton « choix articles ») dans la BDD

    Supprimer Articles : : permet de supprimer les données de l’article affiché dans mon tableau (en D1, choisi avec le bouton « choix articles ») dans la BDD


    2) Mon probleme : Le bouton Modifier articles ne fonctionne pas
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour,

    Ouh! Là! Là!

    Plutôt qu'un formulaire VBA, des cellules formulées avec une combinaison de fonctions Index et Equiv auraient suffi à mon sens.

    Quand bien même.

    Déjà, au niveau du code, j'aurais écrit

    à la place de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
            Set WsSource = Worksheets("09_BDD_Articles")
            Set WsDestination = Worksheets("08_Sous-Details")
            L = Rows([A2:A65536].Find(TextBox1.Value).Row).Select
    ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
            Dim T As Range
            Set T = WsSource.Range("A2:A65536").Find(TextBox1.Value)
     
            If Not T Is Nothing Then
     
            L = T.Row
    Mais des principes de base seraient toutefois à acquérir avant d'envisager un tel développement
    (Liste non exhaustive)
    - Boutons de commande placés sur la mauvaise feuille
    - Contrôles de Userform mal nommés (Txt_, Cbx_....)
    - Rattachement des objets
    - Select qui ne sert à rien
    - Bloc With non utilisé
    - Libération des variables (Set .. = Nothing)

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Conducteur de travaux
    Inscrit en
    Décembre 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Conducteur de travaux

    Informations forums :
    Inscription : Décembre 2018
    Messages : 3
    Par défaut
    Merci a toi MarcelG, ton bout de code ma aidé a faire fonctionner comme je le désire mon fichier. Encore quelques petites modifications et il sera parfait pour moi, du moins dans le fonctionnement que je souhaitais. Juste un défaut sur le nom de l'article (en D1) que je ne peux modifier car sinon il ne trouve plus la ligne correspondante dans ma BDD. Encore quelques heures de réflexion a venir.

    Pour ce qui des principes de base du langage VBA, tu a raison, je ne pensais pas que mon fichier m’emmènerais aussi loin dans le dans le VBA, et j’aurais surement du commencer par des étapes plus simple. J'ai fais un peu les choses a l'envers sur ce coup là, mais j'aime bien finir ce que je commence (le cas de mon fichier) et surtout comprendre ce que je fait.
    En tous cas cela ma permis de connaitre ce langage et de me donner l'envie de mis intéresser un peu plus.

    Encore merci a toi pour ton aide.
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour Juju, Bonjour le Forum,

    Pas de problème.
    Pense toutefois à cette solution Excel, qui t'évitera l'activation d'un bouton.

    Pour ce qui est de VBA, tu trouveras quelques liens dans cette discussion.
    Je te conseille de les placer en raccourcis sur ton bureau pour pouvoir t'y référer plus facilement.

    Si la discussion répond à ton besoin, alors tu peux la placer en mode "Résolu".

    Bonne continuation et à bientôt.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Conducteur de travaux
    Inscrit en
    Décembre 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Conducteur de travaux

    Informations forums :
    Inscription : Décembre 2018
    Messages : 3
    Par défaut
    Merci pour les liens.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/03/2016, 22h56
  2. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  3. [MySQL] inserer une ligne d'une table dans une autre table
    Par piero53 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 14/12/2008, 18h29
  4. Réponses: 3
    Dernier message: 29/01/2008, 12h08
  5. Modifier la hauteur d'une ligne dans une feuille Excel
    Par Maxence45 dans le forum Excel
    Réponses: 1
    Dernier message: 23/11/2007, 06h41

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