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 :

encore quelques petites questions


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 35
    Points : 19
    Points
    19
    Par défaut encore quelques petites questions
    merci a silkyroad pour son aide
    j'ai encore bcp de questions

    j'ai une liste dans mon userform

    1- quand je choisi un nom je veux que les données aillent dans une feuille specifique
    2- comment fait on pour que ce qu'on choisit dans l'userform aillent dans une feuille

    ok ok je vais essayer d'etre plus clair

    j'ai plusieurs items principaux ex : tennis, ping pong, squash etc....
    donc des feuilles nommées tennis, pingpong, squash ect..

    si je choisi le tennis je veux que toutes les données que je saisi dans userform aillent dans la feuille tennis

    si je choisi ping pong je veux que toutes les données que je saisi dans l'userform aillent dans la feuille ping pong

    Maintenant si ca ok !! comment faire pour que les données de l'userform s'inscrivent dans les cases prévues dans chaques feuilles

    si vous avez compris vous avez le droit a la medaille

    d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 661
    Points : 34 365
    Points
    34 365
    Par défaut
    bonsoir,
    je suppose que les éléments que tu veux bouger dans la feuille sont dans une liste, et le nom de la feuille dans une autre, et que ton transfert se fait apres click sur bouton.

    Je propose une idée comme ca:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    cpteur = 1
    for i = 0 to listeelement.listcount -1
     if listeelement.selected(i) then
             worksheets(listefeuille.value).range("a" & cpteur) = listeelement.list(i).value 
            cpteur = cpteur +1
    end if
    next i

  3. #3
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Si tu veux sélectionner la feuille choisie dans la listbox

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sheets(ListBox1.Text).Select
    Ensuite tu mets ton code de copie des données a ajouter

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 35
    Points : 19
    Points
    19
    Par défaut desolé !!!
    j'ai pas trop compris ce que vous me dites

    j'ai dans un listbox trois item principaux tennis, ping pong squash
    ensuite j'ai d'autres items ex raquette, balle, chaussure

    une fois que j'ai tout rempli

    en fonction de ce que j'ai mis dans l'item principal il va remplir la feuille correspondante (tennis , ping, squash)

    dans les trois feuilles j'ai les champs de colonne raquette, ping, squash

    je sais pas si c'est ce que vous avez compris ??

    si vous pouviez me donner un peu plus de details (je debute )


  5. #5
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Inspire toi de ce code


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    With Sheets(ListBox1.Text)
        .range("A2").value=Listbox2.text
        .range("B2").value=ListBox3.Text
        .range("C2").value=ListBox1.Text
     
    End With
    Si ca ne convient pas, envoi nous une bout de ton fichier

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 661
    Points : 34 365
    Points
    34 365
    Par défaut
    mon code sert a tester si tu as sélectionner un ou plusieurs éléments dans ta listbox [tennis/ping/squash] et si c'est le cas, va mettre dans la colonne A de la feuille en question l'element choisi [raquette/balle].

    pour ton histoire de champs, j'ai pas pigé...

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 35
    Points : 19
    Points
    19
    Par défaut fichier joint...
    voici un bout du fichier

    il y a un soucis au demarrage c'est normal j'ai enleve des elements pour aleger

    le mot de passe macro est : ***

    Fichiers attachés Fichiers attachés

  8. #8
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 661
    Points : 34 365
    Points
    34 365
    Par défaut
    merci,
    bon alors plusieurs petits conseils pour le futur :
    - indente ton code, c'est illisible
    - un userform est plus agréable avec un bouton quitter

    dans ton evenement button1_click tu utilises le code que j'ai donné plus haut en remplacant listeelement par combobox1
    le reste est donné par jfontaine

  9. #9
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Code a mettre dans le click de ton bouton validation

    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 Long
    i = 1
     
    With Sheets(ComboBox1.Text)
        .Select
     
        'recherche de la premiere ligne vide
        Do While .Range("A" & i).Value <> ""
            i = i + 1
        Loop
     
        'Ajout les données
        .Range("A" & i).Value = TextBox30.Text
        .Range("B" & i).Value = TextBox5.Text
        .Range("C" & i).Value = Tbclient.Text
     
    End With
     
    End Sub
    Attention, dans la feuille donnée, ping pong est en 2 mots alors que la feuille en contient que 1

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 35
    Points : 19
    Points
    19
    Par défaut merci
    il m'indique erreur de compilation ?

    juste pour information, ou se trouve l'info qui indique sur quelles feuilles il doit aller

  11. #11
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Code de la feuille de destination
    Ce code fonctionne tres bien sur mon poste.
    Sur quelle ligne il bloque

  12. #12
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 661
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 661
    Points : 34 365
    Points
    34 365
    Par défaut
    dans combobox1, c'est à quelle ligne l'erreur, tu as pensé a virer l'autre private sub commandbutton1_click ?

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 35
    Points : 19
    Points
    19
    Par défaut
    est ce que je dois remplacer text par le nom de la feuille ?

    il me met l'erreur qui est 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
    Private Sub CommandButton1_Click()
    
    
    Dim i As Long
    i = 1
     
    With Sheets(ComboBox1.Text)
        .Select
        
        'recherche de la premiere ligne vide
        Do While .Range("A" & i).Value <> ""
            i = i + 1
        Loop
     
        'Ajout les données
        .Range("A" & i).Value = TextBox30.Text    .Range("B" & i).Value = TextBox5.Text
        .Range("C" & i).Value = Tbclient.Text
     
    End With

  14. #14
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Fait attention de bien revenir a la ligne apres le textbox30.text
    Sinon, le textbox30 sur le fichier que tu as mis a dispo c'est la textbox correspondant à Raquette. Ce n'est pas très parlant. Faudrait penser avant de coder a mettre des noms reconnaissable aux objets

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 35
    Points : 19
    Points
    19
    Par défaut peux tu regarger
    bonjour,

    j'ai inserer le code mais je ne comprends pas tout

    peut tu m'aider STP

    d'avance
    Fichiers attachés Fichiers attachés

  16. #16
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Regardes au niveau de tes textbox, tu as changé les noms. Donc le code plus haut ne fonctionne plus.
    Adapte le code en fonction des noms

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        .Range("A" & i).Value = TextBox30.Text 'Raquette est devenu TextBox31
        .Range("B" & i).Value = TextBox5.Text   'Balle
        .Range("C" & i).Value = Tbclient.Text    'Chaussure est devenu TextBox30

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

Discussions similaires

  1. quelques petites questions
    Par la debutante dans le forum Windows
    Réponses: 1
    Dernier message: 20/12/2006, 10h08
  2. quelques petites questions sur les windows form
    Par natasha84 dans le forum C++/CLI
    Réponses: 22
    Dernier message: 25/05/2006, 23h14
  3. Quelques petites questions sur le shell
    Par Badaboumpanpan dans le forum Linux
    Réponses: 8
    Dernier message: 01/04/2006, 01h09
  4. Encore une petite question sur les sockets...
    Par damien99 dans le forum MFC
    Réponses: 4
    Dernier message: 15/02/2006, 15h22
  5. [Tk] Quelques petites questions
    Par Damian dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 06/02/2006, 17h34

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