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 :

utilisation userform


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut utilisation userform
    Bonjour j'ai plusieurs probleme sur exel si quelqu'un peut m'aider je le remercie par avance meme pour 1 question alors j explqiue mes problemes


    1)Comment faire pour ques des infos disponible dans un usurforme (et saisie par l individu) puisse etre reporter sur un autre usurforme mais ce dernier comporte d autre informations (que je souhaite calculer).

    2) Comment faire pour que des saisie a partir d un usurforme puisse etre placer sous les precedante. j m explique j ai reussi a retransmettre les info de mon usurforme sur la feuille exel mais je souhaoite que c dernier puisse etre enregister sur ma feuille exel et qu une nvelle saisie puisse etre enregistre a la suite

    voici ce que j ai fait
    Sheets("Go Crédit").Range("A11").Value = Me.TextBox3.Text
    'ce qui me permet de la fffichera la cellule A11 mais comment faire pour que la nouvelle saisie aille en dessous soit en cellule A12'
    merci davance

  2. #2
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    SAlut
    c'est claire comme du jus de chic.
    Ce que j'en comprend c'est que tu as une zone de text sur un userform et que quand tu appui sur un bouton tu veux mettre la valeur saisi dans un tableau.
    Et qu'a chaque nouvel appui sur le bouton tu ailles 1 cellule plus bas.
    Tu as au moins de choix possible.
    Je pense que le plus simple est le suivant, tu regarde le 1ere case vide et tu y met ta valeur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     Sheets("Go Crédit").cells(rows.count,"A").End(XlUp) := me.TextBox3.Text
    Pour le reste explique un peu plus ce que tu veux ou mieux, met carrement un fichier exemple
    A++
    Qwaz

    [Edit]
    Ps: change le topic de ton sujet et met en un en rapport avec ta question
    [/Edit]

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  3. #3
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut
    je n'est pas encore essayé mais avant de m'y hater je vais mieux expliquer

    Je dispose de mon premier usurforme (frmCredit) et d'un deuxieme usurforme (frmReponse) je souhaite plus precissiment que des infos saisie sur l usurforme frmcredit soit representer sur mon deuxieme uniforme (frmreponse) apres avoir valider sur un bouton.

    'Commnande permettant de passer au deuxieme usurforme (frmReponse)
    frmReponse.Show

    'je vaiy agouter la commande que tu m a donner pour que les infos saisie y apparaisse sur la feuille exel'

    MAIS comment faire pour que les infos saisie sur cette usurforme (frmCredit)) apparaise sur le second (frmReponse) (ces inforamtion sont le nom prenom ect....)




    je profite pour demander auytre chose

    Comment faire pour effectuer un calcul automatiquement cad apres la saisie des informations necesaire pour le calcul par l utulisateur


    sachant que le calcul ets le suivant

    Sub textTotal_Change()
    TextTotal = TextMontant(1 + TextTaux) * TextDuree
    End Sub

    ait-je ete asser clair ??????????


    merci d avance

  4. #4
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Re
    Pour transmettre les valeurs d'un UserForme a l'autre tu fait comme ca dans le bouton

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     'tu t'assure que t'as form est chargée
    Load frmReponse 
     
    'Tu recupert alors les valeurs
    frmReponse.TextBox1.Text = TextBox1.text 'le 2eme c'est le textbox qui se trouve sur la fenetre en cours Me. est facultatif
    [...] 'Pareil pour les autre controle
    A++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  5. #5
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Pour les calculs c'est comme ca, il faut convertir les donné text en données numeric. Attention de bien controler avant que les données soit numeric

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     'On test si les données sont numeric 
    If IsNumeric(TextBox1.Text) And IsNumeric(TextBox2.Text) Then
      TextBox3.Text = CStr(CSng(TextBox1.Text) + CSng(TextBox2.Text))
    End If
    Pour affiner un peu le truc tu peux controler que l'utilisateur utilise bien le bon separateur decimal, regarde dans les topic precedent la question a deja ete traité

    A++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  6. #6
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut toujours des soucis dsl
    re
    Je tenais deja a te remercier pour ton aide (je suis vraiment perdu)

    Pour les calcule je vais essayer masi revenons a mon probleme de formulaire je n arrive tjs pas a faire en sorte que les donnee inscrit sur mon formulaire cerdit apparauisse sur mon formulaire reponse
    voila ce que j ai fait (je suis novice dsl il faut faire calmement)




    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
    Private Sub cmdValider_Click()
     
    Load frmReponse
     
    'Commnande permettant de passer au deuxieme usurforme (frmReponse)
     
    frmReponse.Show
     
    'Commande permettant d'afficher sur la feuille exel toutes les informations saisient par l'utulisateur'
    Sheets("Go Crédit").Cells(Rows.Count, "A").End(xlUp) = Me.TextStatut.Text
    Sheets("Go Crédit").Cells(Rows.Count, "B").End(xlUp) = Me.TextNom.Text
    Sheets("Go Crédit").Cells(Rows.Count, "C").End(xlUp) = Me.TextBox2.Text
    Sheets("Go Crédit").Cells(Rows.Count, "D").End(xlUp) = Me.TextMontant.Text
    Sheets("Go Crédit").Cells(Rows.Count, "E").End(xlUp) = Me.TextDurée.Text
    Sheets("Go Crédit").Cells(Rows.Count, "F").End(xlUp) = Me.TextTaux.Text
     
     
    frmReponse.TextNom.Text = TextNom.Text
    frmReponse.TextStatut.Text = TextStatut.Text
    frmReponse.TextTaux.Text = TextInteret.Text
    frmReponse.TextMontant.Text = TextMontant.Text
    frmReponse.TextDurée.Text = TextDurée.Text
     
     
    Unload Me
    End Sub
    Je t'EXPLIQUE je desire saiir des infos (ds le formulaire frmcredit) qui vont automatiquement dans le deuxieme formulaire (frmreponse) puis ces donnes doivnet etre inscrit sur ma feuille exel mais chaque nouvelle saisie doivent etre ecrite l une en dessous de lautre


    j espere etre asser clair et encore merci d avance je desssespere depuis plusieurs jours

  7. #7
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut precissions
    les commander que je ecrite je les ait inscrite ds un bouton valide sur mon premiere usurforme

  8. #8
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Si tu utilise une version superieur a Excel 97, utilise
    Et ne mets cette ligne qu'une fois tes données inscrites dans ton 2eme UserForm. Le UserForm apparaitra directement avec les valeurs saisies comme ca

    a++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  9. #9
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut tjs pas
    Re,
    Pourrais tu stp modifier ce que j ai copier precedemamnt car la je uis , completement perdu oui effectivement je dispose d exel 2003


    j ai un peu de te deamnder ça mais ej deprime je suis perdu

  10. #10
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Pense a mettre des balise code dans tes topics

    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
     Private Sub cmdValider_Click()
     
     
    'Commande permettant d'afficher sur la feuille exel toutes les informations saisient par l'utulisateur
    Sheets("Go Crédit").Cells(Rows.Count, "A").End(xlUp) = Me.TextStatut.Text
    Sheets("Go Crédit").Cells(Rows.Count, "B").End(xlUp) = Me.TextNom.Text
    Sheets("Go Crédit").Cells(Rows.Count, "C").End(xlUp) = Me.TextBox2.Text
    Sheets("Go Crédit").Cells(Rows.Count, "D").End(xlUp) = Me.TextMontant.Text
    Sheets("Go Crédit").Cells(Rows.Count, "E").End(xlUp) = Me.TextDurée.Text
    Sheets("Go Crédit").Cells(Rows.Count, "F").End(xlUp) = Me.TextTaux.Text
     
    'on charge en memoire la fenetre si ce n'est pas deja fait
     Load frmReponse
     
    frmReponse.TextNom.Text = TextNom.Text
    frmReponse.TextStatut.Text = TextStatut.Text
    frmReponse.TextTaux.Text = TextInteret.Text
    frmReponse.TextMontant.Text = TextMontant.Text
    frmReponse.TextDurée.Text = TextDurée.Text
     
    frmReponse.Show False
     
    'Il vaut mieux cacher la fenetre plutot que de la decharger (enfin c mon avis)
    Me.hide
     
    'Unload Me
    End Sub
    J'ai pas testé mais ce doit etre bon.
    Par contre attention au debut avec les cells(...).End il faut imperativement que tes TextBox contiennent des données pour faire comme cela, car sinon tu va toutes decaler tes données.

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  11. #11
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut desolé erreur
    desolé j ai une erreur il me dise erreur d application 401

    impossible d 'afficher une feuille non modale lorsque une feuille modalle est affiché

    ce qui est en jaune c cette commande frmReponse.Show False

  12. #12
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut YES
    enfin j 'ai reussi a transmettre les infos noté sur mon usurforme1 sur le 2 eme

    Maintenant j'ai 2 autre soucis:

    1) mon premier est de permettre au données saisie sur mon usurforme d'aller sur ma feuille exel (ça je ais faire c par exemple:
    Sheets("Go Crédit").Range("A11").Value = Me.TextPre.Text
    mais je veux qu'une nouvelle saisies aille directement en dessous de l autre sachant que pour moi ma premiere saisies doit allé a la celule A11
    je sais que c une bouvle mais je n ai aps reussi a l appliquer


    2) comment permettre a vba d'effectuer un calcul directement apres la saisie des données sur mon usurforme
    voici mon calcul:


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Sub textTotal_Change()
    TextTotal = TextMontant(1 + TextTaux) * TextDuree
    End Sub
    si quelquin peu m aider qu'il maide svp je dessepere


    merci a tous le monde pour votre aide

  13. #13
    Inactif  
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2 054
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 054
    Par défaut
    Et qu'advient-t-il de ton autre poste avec la même question pour lequel tu à eu des réponses aujourd'hui à 17h21 et 17h47 et auquel tu ne daigne même pas répondre.
    A+++++

  14. #14
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 22
    Par défaut desolé
    Effectivement je me suis emmellé les pinceaux entre les 2 postes
    je m'excuse donc et vais mettre ce post comme etant resolu je vous pris de m'excuser

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

Discussions similaires

  1. Utilisation userform VBA
    Par cott333 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/01/2012, 23h09
  2. utilisation userform ComboBox
    Par gaston64 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/03/2010, 17h46
  3. Réponses: 2
    Dernier message: 14/01/2010, 20h32
  4. Utiliser des valeur de cellule dans un userform
    Par swissmade dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 05/07/2007, 20h38
  5. [excel] utilisation d'un userform
    Par Xtaline dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/07/2006, 15h58

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