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 :

Editer des données avec Userform [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2014
    Messages : 9
    Par défaut Editer des données avec Userform
    Bonjour tout le monde,

    Je possède un Userform qui pour l'instant me permet de faire la chose suivante : sélectionner un pays avec une listbox, charger les données relatives à ce pays dans d'autres listbox (disons pour simplifier que ces données se situent sur Feuil1).

    Ce que je souhaiterais maintenant c'est qu'au moment de la validation, ma base de données en Feuil2 soient "scannées" et recherche toutes les occurrences du pays sélectionné dans le Userform, pour ensuite remplacer ces données par celles du Userform (Listbox 1 pour colonne A, Listbox 2 pour colonne B, etc) et ce pour chaque occurence.

    A noter que je parviens à modifier les données en Feuil1 car il n'existe qu'une seule occurrence du pays. Dans Feuil2 il y en a plusieurs et ma méthode n'est donc pas adaptée.

    Je lutte depuis deux semaines pour trouver une solution mais rien de satisfaisant jusqu'à maintenant... Quelqu'un aurait-il des idées à ce sujet ? Un petit exemple m'aiderait beaucoup .

    Très bonne journée à tous !

  2. #2
    Membre expérimenté Avatar de lucasgaetan
    Homme Profil pro
    dessinateur BE
    Inscrit en
    Août 2011
    Messages
    175
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : dessinateur BE
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2011
    Messages : 175
    Par défaut
    Bonjour Martin TK,

    Je ne suis pas certains d'avoir tout compris à ton problème, mais voici un exemple (bidon) ou tu peux changer le nombre de sièges au Parlement européen de la France (voir fichier joint: testlistebox.zip)

    1 Clique sur le bouton de la Feuil1
    2 Voir modification apporter sur la Feuil2 --> ligne 7 et 13

    dis moi si j'ai (ou tu n'as) rien compris

    a+

  3. #3
    Membre habitué
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2014
    Messages : 9
    Par défaut
    Wow en effet ca semble bien répondre à ce dont j'ai besoin. Il va falloir que je me familiarise sérieusement avec les boucles "for" !

    J'applique ca à mon code pour voir si tout fonctionne bien et si oui je mettrai le sujet en résolu .

    Merci pour cette réponse plus que rapide en tout cas !

    Martin

  4. #4
    Membre chevronné
    Homme Profil pro
    autodidacte
    Inscrit en
    Novembre 2013
    Messages
    517
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : autodidacte
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 517
    Par défaut
    les boucles for next n'ont rien de compliquer.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for i = 1 to 10 'ici i est la variable et prendra les valeurs 1,2,3,4,5,6,7,8,9,10.
    worksheets("test").cells(i,1).value = userform1.textbox1.value 'la valeur des cellules en colonne 1 (A) worksheets("test").cells(i,"A").value des lignes i (i allant de 1 à 10) sera égale à la valeur entrée dans le textbox1 par exemple
    next 'passe à la suivante valeur de i

    en gros for i = 1 to 10 se traduit par pour i allant de 1 à 10 et next i se traduit par prochaine valeur de i
    soit i+1

  5. #5
    Membre habitué
    Homme Profil pro
    Inscrit en
    Février 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Février 2014
    Messages : 9
    Par défaut
    En effet le principe est simple mais il me faut m'entrainer à les utiliser correctement, en utilisant les bonnes déclarations de variables, etc. Merci en tout cas pour l'information !

    @lucasgaetan : merci encore pour cet exemple, j'ai pu l'appliquer à mon fichier et tout fonctionne parfaitement !

    Excellente journée à tous !

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

Discussions similaires

  1. [XL-2010] Filtrer des données avec des Checkbox d'un Userform
    Par RomBon dans le forum Excel
    Réponses: 2
    Dernier message: 04/08/2014, 07h43
  2. [AC-2010] Editer des données d'un formulaire avec jointure
    Par nde1303 dans le forum IHM
    Réponses: 1
    Dernier message: 18/12/2012, 14h28
  3. Exporter seulement une partie des données avec pg_dump ?
    Par Philhz dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 31/07/2004, 09h50
  4. edition des données
    Par Revan012 dans le forum Bases de données
    Réponses: 2
    Dernier message: 15/06/2004, 12h09
  5. Réponses: 13
    Dernier message: 20/03/2003, 08h11

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