[Excel VBA]Tranfert de valeurs - Page 2

Résolu
Précédent
  • 1
  • 2
  1. ks13 Messages postés 191 Statut Membre 23
     
    hmmm, comme je ne suis pas du genre inactif ,malgre la pluie de questions que j'ai posté sur ce forum, et que je voulais essaier d'embeter le monde le moins possible, j'ai cherche de mon cote les reponses a mes questions, donc j'ai reussi a creer des listes deroulantes avec excel et sa boite a outils de controles ^^ ainsi que 2 champs texte. maintenant, j'ai mes listes deroulantes et plages de donees (liste partenaires et type), et je n'arrive pas a assimiler les valeurs dans les listes deroulantes. j'ai essaye la commande :

    Private Sub ComboBox1_Change()
    Sheets("L-listPartenaires").Activate
    ComboBox1_Change.ListFillRange = "A1:B11"
    End Sub

    mais apparement j'ai du mal comprendre les explications que j'ai trouve sur differents sites. est-ce que quelqu'un pourrai m'aider sur ce coup?
    0
  2. Armojax Messages postés 1863 Date d'inscription   Statut Membre Dernière intervention   1 529
     
    Hello ks13,

    Chez moi, pas de pluie... en tout cas pour le moment.
    Ce qui ne m'a pas empêché de jeter un oeil à ta question. Regarde si ça te va :
    https://www.cjoint.com/?iqsr0J0TBV

    Tu peux lancer avec <CTRL+MAJ+M>
    0
  3. ks13 Messages postés 191 Statut Membre 23
     
    waow, ce truc est genial XD

    bon, j'ai laissé le nom du module en tant que armojax, et je vais aussi rajouter un commentaire pour nommer le veritable auteur de cette macro ^^. je te suis vraiment tres reconnaissant armojax, sans toi j'aurais surement mis 2 voire 3 fois plus de temps a faire cette macro. neaumoins, meme si je n'ai pas reussi a faire ca tout seul, j'ai eu plein de d'exemples pour me former un peu au vba ^^

    j'espere que si on me donne une autre macro a faire j'aurais au moins assez de connaissances pour faire les trucs les plus simples et/ou moyens en difficulté ^^; (oui, je ne suis pas trop confident en mes conaissances dans vba, normal vu que j'ai commence a apprendre il y a une semaine environ, et avant ca je ne savais meme pas ce que c'etais ^^;)

    enfin bref, je suis tres reconnaissant de l'aide qu'on m'a apporté, et le responsable, malgre le fait qu'il apprecie pas que je me suis fait aider, apprecie que sa macro a ete terminée (ah les humains, de si etranges creatures o_O).

    ah vi, quand j'ai copie les modules et feuilles, j'ai eu un message d'erreur, ceci est au fait que ma feuille config a ete renomee en c-config, et les listes en l-listetype et l-listepartenaires ~_~
    j'ai pas compris au debut, mais quand j'ai apercu "Config" dans le code j'ai compris. ceci n'a rien de special, mais je dis ca au cas ou celui ou celle qui lira ce post rencontrerais le meme probleme ^^

    (aaaah, dire que je suis membre de ce forum depuis quelques anees deja et que ceci est la 1ere fois ou je viens au moins une fois par jour u_u;)

    p.s : un dernier probleme pour la route (^^; desole, je promet que c'est le dernier....pour cette macro) : je voudrais rajouter dans le code, une fonction qui teste si la feuille globale existe, et si non, qu'il la cree, je sais comment creer une feuille, mais j'ai pas reussi a la renommer sans utiliser la commande Sheets("feuilx").Name = "Global", et aussi, je ne sais pas comment verifier si une feuille existe, dois-je utiliser
    for each feuille as worksheet
    if feuille = "global" then
    ou y a-t-il une autre facon de faire?
    0
  4. Armojax Messages postés 1863 Date d'inscription   Statut Membre Dernière intervention   1 529
     
    Salut ks13,

    Si tu veux quelques éclaircissements sur le code, n'hésite pas. Je n'ai pas été très prolixe du côté des commentaires !!!

    Pour la feuille Global, je propose le petit code ci-dessous :
    Sub TestFeuille()
      On Error Resume Next
      Sheets("Global").Activate
      If Err.Number = 9 Then
        Worksheets.Add
        ActiveSheet.Name = "Global"
      End If
      On Error GoTo 0
    End Sub
    Le principe : on active la feuille Global. Si elle existe, tout se passe bien, et il n'y a pas d'erreur.
    Dans le cas contraire, ça provoque une erreur. L'instruction On Error Resume Next dit à VBA : "Si ça plante, tu la fermes et tu passes à la suite, tant que je ne dis rien". Donc on évite le plantage et le message, mais on récupère l'erreur n° 9. Donc derrière on la teste, et on crée la feuille.
    On Error Goto 0 termine la procédure d'erreur.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ks13 Messages postés 191 Statut Membre 23
     
    Okie, j'ai a peu pres compris ce que fait chaque ligne de ce code, mais j'ai enlevé les sub testfeuille() et end sub pour rajouter la fonction a consolidation, a la place de sheets("Global").Select ^^
    j'ai aussi fait un joli bouton (oui, j'ai reussi a trouver comment creer un bouton dans une feuille T_T) pour lancer l'operation. le responsable est content, moi j'ai appris pas mal de choses ettout est bien qui finit bien (la je suis parti un peu trop loin :p).
    enfin, je suis content que cette macro soit enfin finie ^^;
    et merci encore de ton aide armojax ^^
    0
  7. ledorian83 Messages postés 31 Statut Membre 1
     
    Bonjour, je suis un débutant en VB6, cela fat une semaine que je commence à apprendre mais je n'arrive pas a donner une valeur a mes variables déclarées en globbal voici mon code :

    Dim serial_number As String
    Dim Text_Box As String
    Private Sub button_end_Click()
    End
    End Sub
    Private Sub Text1_Change()
    If Text1.Text <> serial_number Then
    Else
    End
    End If
    End Sub
    0
  8. ks13
     
    Ok, je viens de trouver mon erreur : il me manque la declaration de la variable Sheet. Avec ceci resolu je vais pouvoir avancer un peu. Je voudrais par contre savoir s'il est possible de verifier le nombre d'arguments d'un Array, comme je l'ai demande plus haut, ceci m'aiderais beaucoup dans le developpement de la macro. Merci
    -1
Précédent
  • 1
  • 2