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 :

Copie de données depuis Userform


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mars 2019
    Messages : 3
    Par défaut Copie de données depuis Userform
    Bonjour,

    J'ai créé un fichier Excel afin de regrouper les pilotes de rallye WRC et d'afficher leur résultat sur les 3 premiers rallye
    J'ai créé un userform afin de synthétiser les données du tableau et remplir les résultats par pilote lorsque je sélectionne un ligne de mon listbox
    L'affichage des données s'effectue correctement et je peux remplir mes TextBox sans problème
    Là où ça coince, c'est au niveau de mon code lorsque je clique sur le bouton Enregistrer changements
    En effet, je souhaite que la valeur de montextbox5 soit copiée dans la cellule de la colonne E correspondant à ma sélection. Cela fonctionne correctement
    Par contre pour le textbox6 qui devrait être copié en colonne F, j'ai deux comportements incohérents :
    Si ma cellule F est vide, la copie ne se fait pas
    Si ma cellule F contient quelque chose, c'est la valeur de mon Textbox5 qui est reprise au lieu de la valeur du Textbox6
    J'ai essayé plusieurs méthodes, mais je n'arrive à rien.
    Si quelqu'un a une idée ou besoin de plus de renseignements n'hésitez pas
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    pas sure d'avoir compris mais si tu changes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(i + 1, 6) = TextBox5.Value
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(i + 1, 6) = TextBox6.Value
    ce qui donne :
    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
    Private Sub CommandButton1_Click()
     
     
    Dim i As Integer
     
     
    'ATTENTION : Le listindex doit être incrémenté à +1 sur une pour pouvoir correspondre, sinon il y a un décalage de m...
        i = Me.ListBox1.ListIndex
     
     
       Sheets("Feuil1").Select
     
     
     
            If Cells(i + 1, 5).Value <> TextBox5.Value Then GoTo modif1 Else GoTo check2
    modif1:
            Cells(i + 1, 5) = TextBox5.Value
     
     
    check2:
            If Cells(i + 1, 6).Value <> TextBox6.Value Then GoTo modif2 Else GoTo check3
    modif2:
            Cells(i + 1, 6) = TextBox6.Value
     
    check3:
     
        Unload Me
        UserForm1.Show
     
    End Sub

  3. #3
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mars 2019
    Messages : 3
    Par défaut
    Merci pour ta réponse, effectivement, j'avais fait une erreur de copier/coller

    Maintenant, ça se corse :-(

    En fait, je fais mes modifications dans le userform et dès que je clique sur enregistrer les changements, il n'y a que le Textbox5 qui affiche les données modifiées, le Textbox6 revient à son ancienne valeur (?!?) et du coup aucune modification n'est effectuée ...

    A mes yeux on est dans le paranormal, mais il doit y avoir un truc qui coince et je ne vois vraiment pas où ...
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    je partage l'incompréhension
    même on simplifier le code
    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
    Private Sub CommandButton1_Click()
    Dim i As Integer
        i = Me.ListBox1.ListIndex
       Sheets("Feuil1").Select
            Cells(i + 1, 5).Value = TextBox5.Value
            Cells(i + 1, 6) = TextBox6.Value
    End Sub
    Private Sub ListBox1_Click()
    Dim i As Integer
        i = Me.ListBox1.ListIndex
        Me.ListBox1.Selected(i) = True
        Me.TextBox1.Value = Me.ListBox1.Column(0, i)
        Me.TextBox2.Value = Me.ListBox1.Column(1, i)
        Me.TextBox3.Value = Me.ListBox1.Column(2, i)
        Me.TextBox4.Value = Me.ListBox1.Column(3, i)
        Me.TextBox5.Value = Me.ListBox1.Column(4, i)
        Me.TextBox6.Value = Me.ListBox1.Column(5, i)
        Me.TextBox7.Value = Me.ListBox1.Column(6, i)
        Me.TextBox8.Value = Me.ListBox1.Column(7, i)
    End Sub
    le textbox5 change et le textbox6 toujours reviens à son valeur d'origine...tester avec un message box !!
    c'est sur y a une erreur quelque part qui me dépasse

  5. #5
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    si on remplace à l’événement double clic ça fonctionne
    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
    Private Sub CommandButton1_Click()
    Dim i As Integer
        i = Me.ListBox1.ListIndex
       Sheets("Feuil1").Select
            Cells(i + 1, 5).Value = TextBox5.Value
            Cells(i + 1, 6).Value = TextBox6.Value
    End Sub
     
     
    Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Dim i As Integer
        i = Me.ListBox1.ListIndex
        Me.ListBox1.Selected(i) = True
        Me.TextBox1.Value = Me.ListBox1.Column(0, i)
        Me.TextBox2.Value = Me.ListBox1.Column(1, i)
        Me.TextBox3.Value = Me.ListBox1.Column(2, i)
        Me.TextBox4.Value = Me.ListBox1.Column(3, i)
        Me.TextBox5.Value = Me.ListBox1.Column(4, i)
        Me.TextBox6.Value = Me.ListBox1.Column(5, i)
        Me.TextBox7.Value = Me.ListBox1.Column(6, i)
        Me.TextBox8.Value = Me.ListBox1.Column(7, i)
    End Sub

  6. #6
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2019
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mars 2019
    Messages : 3
    Par défaut
    Respect, ça fonctionne parfaitement merci beaucoup !

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 26/03/2014, 07h06
  2. Copie de Données depuis MS Acces
    Par Dadar dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 24/08/2011, 16h45
  3. Copie de données depuis un classeur fermé
    Par kiki29 dans le forum Contribuez
    Réponses: 0
    Dernier message: 15/03/2008, 18h36
  4. Réponses: 5
    Dernier message: 02/04/2007, 20h26
  5. pb d'insertion de données depuis un fichier externe-COPY
    Par boulou32 dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 29/01/2005, 18h50

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