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 :

remontée information dans userform


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 17
    Par défaut remontée information dans userform
    Bonjour,

    tout d'abord merci d'avance pour ceux qui vont se pencher sur cette question.
    Je viens de créer un userform sous excel via VBA, toutes mes listes combox.... fonctionnent et complète bien mon tableau.
    j'ai un feuille pour la remontée des données et une autre pour la source des données.
    ce que j'aimerais :
    - lorsque depuis l'affichage de ma userform je sélectionnes un numéro j'aimerais que les informations déjà saisie remontent. Afin d'éviter les doublons et de permettre les modifications.
    Pour information, lorsque je saisie un nouveau numéro ça incrémente automatiquement une nouvelle ligne en A4.
    merci d'avance de vos retours.
    xadocle

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 5
    Par défaut Un user form de consultation de données à adapter?
    Une base de donnée dont je je consulte les données depuis une userform aprés filtre élaboré vers zone d'extraction 1ere ligne de la zone d'extraction en ligne 7


    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
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    Sub Bouton1133_QuandClic()
     
    Load UserForm4
    vLigcourante = 7
    Range("AK1").Value = vLigcourante
    UserForm4.TB_NunConsult.Value = Range("AI" & vLigcourante).Value
    UserForm4.TB_nomcosultant.Value = Range("AL" & vLigcourante).Value
    UserForm4.TB_Date.Value = Range("AJ" & vLigcourante).Value
    UserForm4.TB_Organisme.Value = Range("AK" & vLigcourante).Value
    UserForm4.TB_Statut = Range("BN" & vLigcourante).Value
    UserForm4.TB_Appartenance.Value = Range("AG" & vLigcourante).Value
    'UserForm4.Calendar1.Value = Range("AJ" & vLigcourante).Value
    vSyscode1 = Range("AM" & vLigcourante).Value
    vSyscode2 = Range("AN" & vLigcourante).Value
    vSyscode3 = Range("AO" & vLigcourante).Value
    vSyscode4 = Range("AP" & vLigcourante).Value
     
    vOcacode5 = Range("Aq" & vLigcourante).Value
    vOcacode6 = Range("Ar" & vLigcourante).Value
    vOcacode7 = Range("As" & vLigcourante).Value
    vOcacode8 = Range("At" & vLigcourante).Value
    vOcacode9 = Range("Au" & vLigcourante).Value
    vOcacode10 = Range("Av" & vLigcourante).Value
    vOcacode11 = Range("Aw" & vLigcourante).Value
    vOcacode12 = Range("Ax" & vLigcourante).Value
    vOcacode13 = Range("Ay" & vLigcourante).Value
     
    vCompcode1 = Range("AZ" & vLigcourante).Value
    vCompcode2 = Range("BA" & vLigcourante).Value
    vCompcode3 = Range("bb" & vLigcourante).Value
    vCompcode4 = Range("BC" & vLigcourante).Value
    vCompcode5 = Range("BD" & vLigcourante).Value
    vCompcode6 = Range("BE" & vLigcourante).Value
    vCompcode7 = Range("BF" & vLigcourante).Value
    vCompcode8 = Range("BG" & vLigcourante).Value
    vCompcode9 = Range("BH" & vLigcourante).Value
    vCompcode10 = Range("BI" & vLigcourante).Value
    vCompcode11 = Range("BJ" & vLigcourante).Value
    vCompcode12 = Range("BK" & vLigcourante).Value
     
     
     
     
    If vSyscode1 > 0 Then UserForm4.OptionButton1.Value = True
    If vSyscode2 > 0 Then UserForm4.OptionButton2.Value = True
    If vSyscode3 > 0 Then UserForm4.OptionButton3.Value = True
    If vSyscode4 > 0 Then UserForm4.OptionButton4.Value = True
     
    If vOcacode5 > 0 Then UserForm4.OptionButton5.Value = True
    If vOcacode6 > 0 Then UserForm4.OptionButton6.Value = True
    If vOcacode7 > 0 Then UserForm4.OptionButton7.Value = True
    If vOcacode8 > 0 Then UserForm4.OptionButton8.Value = True
    If vOcacode9 > 0 Then UserForm4.OptionButton9.Value = True
    If vOcacode10 > 0 Then UserForm4.OptionButton10.Value = True
    If vOcacode11 > 0 Then UserForm4.OptionButton11.Value = True
    If vOcacode12 > 0 Then UserForm4.OptionButton12.Value = True
    If vOcacode13 > 0 Then UserForm4.OptionButton13.Value = True
     
    If vCompcode1 > 0 Then UserForm4.CheckBox1.Value = True
    If vCompcode2 > 0 Then UserForm4.CheckBox2.Value = True
    If vCompcode3 > 0 Then UserForm4.CheckBox3.Value = True
    If vCompcode4 > 0 Then UserForm4.CheckBox4.Value = True
     
    If vCompcode5 > 0 Then UserForm4.CheckBox5.Value = True
    If vCompcode6 > 0 Then UserForm4.CheckBox6.Value = True
    If vCompcode7 > 0 Then UserForm4.CheckBox7.Value = True
    If vCompcode8 > 0 Then UserForm4.CheckBox8.Value = True
    If vCompcode9 > 0 Then UserForm4.CheckBox9.Value = True
    If vCompcode10 > 0 Then UserForm4.CheckBox10.Value = True
    If vCompcode11 > 0 Then UserForm4.CheckBox11.Value = True
    If vCompcode12 > 0 Then UserForm4.CheckBox12.Value = True
     
     
    UserForm4.Show
     
    End Sub
    cela peut-il aider?

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    633
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 633
    Par défaut
    bonsoir

    personnellement j'utilise la fonction Find

    du style

    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
    'Pourla recherche du numero et affichage des informations
      Const FeuilleDesDonnees As String = "Feuil1"
      Const plageDesNumero As String = "A:A"
      Dim c As Range
      Dim numAchercher As String ' ou Integer au choix
     
      numAchercher = txtboxNumero.Text '"celui que tu as selectionné dans ton userform"
      Worksheets(FeuilleDesDonnees).Select
      With Worksheets(FeuilleDesDonnees).Range(plageDesNumero)
        Set c = .Find(numAchercher, LookIn:=xlValues, lookat:=xlWhole)
        If Not c Is Nothing Then
          txtboxDonnee1.Text = c.Offset(0, 1).value 'la cellule juste à droite du n° dans la base
          txtboxDonnee2.Text = c.Offset(0, 2).value 'la cellule juste à droite de la precedente
          'ect...
        Else
          'le n° n'existe pas
        End If
      End With
    évidemment txtboxNumero.Text, txtboxDonnee1.Text sont à adapter à ce que contient ton userform

    et pour l'écriture il suffit d'utiliser le même style de code pour la recherche du n° et puis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    c.Offset(0, 1).value = txtboxDonnee2.Text
    pour l'écriture dans les cellules

    en espérant que ce te soit utile
    bonne soirée

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 17
    Par défaut
    bonjour Zyhac,
    j'ai essayer avec ta proposition mais cela ne fonctionne pas, je regardes d'ou cela peut venir, il ne charge pas la fonction de recherche apparemment.
    cdt xadocle

    cher zyhack
    txtboxNumero.Text, txtboxDonnee1.Text sont ils à renommer en fonction des zones que j'ai nomées dans userform
    xadocle

  5. #5
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    633
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 633
    Par défaut
    J’ai réessayé le code et je ne trouve pas de problème

    Pour le test j’ai créé
    1 UserForm
    3 TextBox
    1 CommandButton

    J’ai mis ce code dans le UserForm

    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 CommandButton1_Click()
      cherche
    End Sub
     
    Sub cherche()
    'Pourla recherche du numero et affichage des informations
      Const FeuilleDesDonnees As String = "Feuil1"
      Const plageDesNumero As String = "A:A"
      Dim c As Range
      Dim numAchercher As String ' ou Integer au choix
     
      numAchercher = TextBox1.Text '"celui que tu as selectionné dans ton userform"
      Worksheets(FeuilleDesDonnees).Select
      With Worksheets(FeuilleDesDonnees).Range(plageDesNumero)
        Set c = .Find(numAchercher, LookIn:=xlValues, lookat:=xlWhole)
        If Not c Is Nothing Then
          TextBox2.Text = c.Offset(0, 1).Value 'la cellule juste à droite du n° dans la base
          TextBox3.Text = c.Offset(0, 2).Value 'la cellule juste à droite de la precedente
          'ect...
        Else
          'le n° n'existe pas
        End If
      End With
     
    End Sub
    Et celui-ci dans un module pour l’appel du UserForm

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Sub test()
      UserForm1.Show
    End Sub

    Dans Feuil1 en col A j’ai mis les chiffres de 1 a 100 et en col B et C des valeurs quelconques

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 17
    Par défaut
    Zyhack
    voici ou je bloques, jsuis dans mon userform, je sélectionne le chiffre dans combobox "numéro" et je coince à la selection en rouge.

    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
    Sub cherche()
    'Pourla recherche du numero et affichage des informations
      Const FeuilleDesDonnees As String = "csi"
      Const plageDesNumero As String = "A:A"
      Dim c As Range
      Dim numAchercher As String ' ou Integer au choix
     
      numAchercher = TextBox1.Text '"celui que tu as selectionné dans ton userform"
      Worksheets(FeuilleDesDonnees).Select
      With Worksheets(FeuilleDesDonnees).Range(plageDesNumero)
        Set c = .Find(numAchercher, LookIn:=xlValues, lookat:=xlWhole)
        If Not c Is Nothing Then
          TextBox2.Text = c.Offset(0, 1).Value 'la cellule juste à droite du n° dans la base
          TextBox3.Text = c.Offset(0, 2).Value 'la cellule juste à droite de la precedente
          'ect...
        Else
          'le n° n'existe pas
        End If
      End With
     
    End Sub

  7. #7
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    633
    Détails du profil
    Informations personnelles :
    Âge : 57
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 633
    Par défaut
    Pour un ComboBox il ne faut pas utiliser la propriété text mais value

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    numAchercher = ComboBox1.Value 'ici le nom de ton ComboBox

Discussions similaires

  1. [XL-2007] information sur bouton dans userform
    Par chris09300 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 12/02/2011, 16h40
  2. Userform pour information dans une TextBox
    Par Souriane dans le forum VBA Word
    Réponses: 2
    Dernier message: 03/12/2009, 17h40
  3. [MySQL] Envoi d'information dans une base de donnée via formulaire
    Par Mysti¢ dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 30/03/2006, 20h35
  4. Envoi d'informations dans un sous programme
    Par Tanguy Sarela dans le forum Linux
    Réponses: 3
    Dernier message: 22/12/2005, 16h57
  5. afficher des informations dans un bloc div
    Par francky356 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 23/11/2005, 15h47

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