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 :

code UerForm pour un Débutant


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    responsable imprimerie municipale
    Inscrit en
    Septembre 2013
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : responsable imprimerie municipale

    Informations forums :
    Inscription : Septembre 2013
    Messages : 65
    Par défaut code UerForm pour un Débutant
    bonjour à tous,

    je viens d’intégrer un service de prêts de véhicules dans une mairie et je dois simplifier les démarches:

    En ce moment nous travaillons avec 5 fichiers Excel pour avoir une trace des actions et pouvoir anticiper les choses, mais cela est lourd, car pas d’interconnexion entre les fichiers.

    Je me suis donc lancé dans la création d’un seul fichier:

    Description:

    Un onglet « base de données » où je vais entrer les changements sur les véhicules donc si par exemple un véhicule passe un CT j’ajoute une ligne pour le signifier.
    Ceci va me permettre de garder un historique pour chaque véhicule (le bouton MAJ véhicules que j’ai programmés avec beaucoup de mal va créer un onglet par véhicule avec dedans son historique).

    donc j’en suis à l’étape ou je dois récupérer et enregistrer des infos via un UserForm:

    J’ai donc créé mon UserForm, mais en ce qui concerne le code je ne m’en sors pas.

    voici ce que je voudrais mettre en place dans le UserForm :

    - quand je rentre un numéro de véhicule (ex 1267) le reste ce rempli avec les infos de la dernière ligne qui concerne ce véhicule comme cela je retrouve l’état de mon véhicule à l’instant T.
    - je corrige cet état.
    - quand je valide le UserForm il crée une nouvelle ligne dans « base de données » avec les nouvelles infos.
    - si le véhicule n’est pas trouvé c’est que c’est un nouveau donc je crée sa fiche.

    -Pour le CT, la contre visite, les entretiens, le triangle, le gilet et les papiers j’ai mis des cases à cocher et donc suivant ce qu’il y a dans le tableau (OK,cv,oui,non) il faut cocher la case et inversement si une case est cochée il faut traduire en texte dans la nouvelle ligne.

    J’espère avoir était clair dans mon explication.

    Je demande de l’aide car je ne sais pas faire et que je veux évoluer.
    j’ai cinq autres UserForm à faire et j’aimerais bien les faire tout seul alors si vous pouviez commenter le code que je puisse comprendre le pourquoi cela serait le top.

    Par avance je vous remercie pour l’aide que vous allez m’apporter.

    je vous joint mon fichier.

    VEHICULES.xlsm

    un bon WE à tous

    Daniel

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je n'ouvre jamais les classeurs, seules les explications écrites éventuellement illustrées par une image m'intéressent
    Un onglet « base de données » où je vais entrer les changements sur les véhicules donc si par exemple un véhicule passe un CT j’ajoute une ligne pour le signifier.
    Ceci va me permettre de garder un historique pour chaque véhicule (le bouton MAJ véhicules que j’ai programmés avec beaucoup de mal va créer un onglet par véhicule avec dedans son historique).
    Si tu souhaites afficher l'historique pour un véhicule et qu'en plus tu utilises du VBA, il est inutile et fastidieux de créer une feuille par véhicule.

    Une seule feuille avec des cellules contenant l'une des fonctions de recherche comme par exemple RECHERCHEV, INDEX, EQUIV et utiliser la méthode AdvancedFilter (filtre avancé d'excel) pour afficher l'historique sélectionné par exemple dans une liste déroulante.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre confirmé
    Homme Profil pro
    responsable imprimerie municipale
    Inscrit en
    Septembre 2013
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : responsable imprimerie municipale

    Informations forums :
    Inscription : Septembre 2013
    Messages : 65
    Par défaut
    bonjour Philippe,

    oui j'entends bien ce que tu dis mais voila c'est une exigence de mon responsable quand il en a besoin je sors une fiche par véhicule en un clic et je lui envoie le fichier (cela me prends 15 s).

    mais si tu ouvre mon fichier tu verras que j'ai fais un bouton pour générer les fiches par véhicule quand j'en ai besoin sinon le fichier tourne seul sans les onglets véhicule.

    voila mais je vais ajouter des onglets pour les réservation longue distance, assurance, carburant, bus et réforme.
    donc j'ai 5 UserForm en plus à faire mais j'aimerais les faire moi même à partir du premier pour moi comprendre comment cela fonctionne.

    c'est la galére d'être débutant: le seul bouton que j'ai fait dedans m'a pris 3h car c'est un code que j'ai adapté et rien ne marché.

    Daniel

    une autre chose j'ai joint un fichier car les explications ne suffise pas.

    pas d'inquiétudes:
    - aucunes données sensible
    - pas de virus ou tout autre chose de méchant.

    je suis là pour de l'aide et pas pour emmerder un forum d'une si grande qualité.


    Daniel

  4. #4
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    oui j'entends bien ce que tu dis mais voila c'est une exigence de mon responsable quand il en a besoin je sors une fiche par véhicule en un clic et je lui envoie le fichier (cela me prends 15 s).
    Il faut par moment éduquer les exigeants en leur expliquant la raison pour laquelle il est préférable de travailler d'une autre manière.
    15 secondes pour imprimer ?
    Penses-tu impossible d'avoir la même chose avec la méthode que je préconise ?

    Imagine avant tout le temps passé en amont (je crois que c'est un bon argument pour ton responsable)
    Temps passé pour créer un nouvelle feuille à chaque nouveau véhicule, temps de recherche de la feuille du véhicule et j'en passe et des meilleurs.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  5. #5
    Membre confirmé
    Homme Profil pro
    responsable imprimerie municipale
    Inscrit en
    Septembre 2013
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : responsable imprimerie municipale

    Informations forums :
    Inscription : Septembre 2013
    Messages : 65
    Par défaut
    les feuilles pour chaque véhicule sont créées au 10 s par une macro tout en automatique.

    de plus il n'y a pas que moi qui travaille dessus donc je dois aussi faire avec les désitératas des autres.

    et après concertation c'est la solution qui a était retenue.

    Daniel

  6. #6
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 173
    Billets dans le blog
    53
    Par défaut
    Bonjour Daniel,
    Dans ce cas tout est parfait. On ne peut donner à boire à un chameau qui n'a pas soif.
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  7. #7
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    bonjour
    j'ai pris le risque d'ouvrir ton fichier

    perso je pense qu'a la base il y a un gros soucis de conception ce qui devrait etre facile ne l'est pas

    tu a une base de donnée avec 36 lignes de la meme voiture a quoi ca sert?? sachant que tu a ensuite une fiche par voiture
    perso je garderait qu'une ligne par voiture dans la base de donnée que je modifierait avec le userform et quand la ligne est modifiée transfert dans la feuille de la voiture
    ainsi dans la base tu a ta voiture a jour et dans sa feuille tu a toutes les intervention
    ensuite ton userform pique un peu les yeux
    cela dit j'aurais nommé les controls en conconrdence avec les colonnes par exemple

    resultat plus besoins de fitre avancé ou simple une simple concordence de la ligne par raport au numero tapé et inscription dans les controls
    que tu met a jours et valide ensuite

    en gros tu n'a besoins de rien si ce n'est qu'un peu de bon sens
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  8. #8
    Membre confirmé
    Homme Profil pro
    responsable imprimerie municipale
    Inscrit en
    Septembre 2013
    Messages
    65
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : responsable imprimerie municipale

    Informations forums :
    Inscription : Septembre 2013
    Messages : 65
    Par défaut
    Bonjour PATRICKTOULON,

    en ce qui concerne l'onglet base de donnees il faut absolument que je garde toute les lignes.

    les fiches par véhicule sont nécessaire lors d'une demande externe mais je les crées avec un bouton en 5s sinon on ne travaille pas dessus car il y as quand même 197 véhicules.

    donc je garde tout dans l'onglet base de donnees afin de sortir les fiches historique par véhicule quand j'en ai besoin.

    pour toi tout semble facile car tu es un PRO du VBA moi j'apprends et je peux te dire que ce n'est pas facile du tout.

    pour le UserForm j'ai fait au mieux (reste l'esthétique mais pour le moment c'est pas important).

    si je savais tout ce que tu dis je ne serais pas là à demander de l'aide j'aurais fait tout tout seul.

    mais c'est pas le cas donc je demande de l'aide pour le premier et je vais apprendre et sortir les 5 autres comme un grand tout seul.

    Daniel

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

Discussions similaires

  1. [MySQL] Optimisation de code pour un débutant
    Par neospirit dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 08/02/2011, 14h05
  2. Réponses: 16
    Dernier message: 28/05/2008, 17h20
  3. Débutante - Code VBA pour MsgBox avec actions multiples
    Par kisscool35 dans le forum Access
    Réponses: 5
    Dernier message: 22/08/2006, 17h43
  4. Réponses: 8
    Dernier message: 12/06/2006, 22h40

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