vsan
Messages postés3Date d'inscriptionsamedi 11 novembre 2000StatutMembreDernière intervention21 mars 2005
-
19 mars 2005 à 10:59
pjcleder
Messages postés183Date d'inscriptionjeudi 4 février 2010StatutMembreDernière intervention16 septembre 2011
-
22 mars 2005 à 07:30
Bonjour à tous!
Voila, j'essaie de développer (c un bien grand mot...) une sorte de boite de dialogue qui me permettrait de lancer une macro!
Ce que je voudrais, c que déjà, la boite de dialogue se lance lorsque je clique sur un bouton... ou automatiquement au lancement du fichier xls... Je ne suis pas difficile là dessus, mais je veux juste qu'elle se lance!
Et puis, je souhaiterai qu'elle me permette d'écrire dans des cases spécifiques des trucs comme "Semaine (n)" ou n est entre parenthèses parce que c une valeur qu'on rentre dans la fameuse boite de dialogue!
Trop fort le truc??? Je ne sais pas... Je n'en sais rien!
J'ai bien tenté d'enregistrer une macro moi même, mais bon, c pas évolutif comme truc... C pour ça que je me tourne vers vous!
Voici à la fin de ce message le code de la "fameuse" boite de dialogue!
Là, pour le moment, je dois lancer mon fichier xls, aller dans VBA editor, et cliquer sur PLAY après avoir sélectionné l'USERFORM... Là, elle se lance et elle fait correctement ce que j'attend d'elle, càd copier/coller des infos d'un autre fichier...
Mais donc, je vous demande :
1) Comment faire pour que cette boite de dialogue s'ouvre automatiquement???
2) Comment lui faire écrire Semaine "n" dans certaines cases???
pjcleder
Messages postés183Date d'inscriptionjeudi 4 février 2010StatutMembreDernière intervention16 septembre 201111 19 mars 2005 à 11:16
PAT
Pas de problème !
Ouvre un fichier Excel.
Va dans l'éditeur VB
Insére une user form
Sélectionne dans l'explorateur "Workbook"
A droite sélectionne l'évenement activate de workbook
colle ceci : userform1.show
enregistre
referme
a la prochaine ouverture , ta form se lance automatiquement.
commence par là. apres tu fais évoluer les choses en insérant des textbox dans ta user et un bouton pour que ce que tu saisis aille dans les cellules de ton choix.
si tu préféres que ta form ne concerne qu'une feuille du classeur fais ton show dans l'événement activate de feuil1 ou feul2
Fais moi signe en cas de souci.
vsan
Messages postés3Date d'inscriptionsamedi 11 novembre 2000StatutMembreDernière intervention21 mars 2005 21 mars 2005 à 10:55
Salut à Toi !
<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />
Merci pour tes explications, maintenant ça fonctionne !
Je suis même arrivé à faire en sorte que ma userform démarre avec un clic sur un bouton ! J
Maintenant, je n'arrive toujours pas à faire en sorte que la valeur "n" de la semaine vienne se recopier dans des cellules...
Pour cela 2 choix qui se proposent à moi :
* soit j'utilise une zone d'intitulé dans la quelle je mets "Semaine n°" et une txtbox dans laquelle on vient mettre le numéro de la semaine...
* soit j'utilise une txtbox dans laquelle je viens mettre par défaut "semaine " et je demande de rajouter le numéro...
L'avantage de la première méthode c que les gens ne peuvent mettre que le numéro de la semaine, je stocke alors la valeur sous un entier... mais je ne sais comment faire faire à Excel un truc du genre "Vient mettre dans la cellule X le texte "Semaine " puis accoler à ce texte la valeur stockée...
L'avantage de la seconde méthode c que je stocke tout sous forme d'une chaîne de caractère... L'inconvénient c que les gens peuvent modifier le texte...
Ce qui me donne en matière de code, pour la méthode 1 :
Dim n As Integer
n = txtsemaine
If n = " " Then
MsgBox "Merci d'indiquer le numéro de la semaine"
End If
Pour la méthode 2 :
Dim semaine As String
semaine = txtsemaine
If semaine = "Semaine " Then
MsgBox "Merci d'indiquer le numéro de la semaine"
End If
D’après toi, je devrais choisir ???
Perso, je pense que la technique de la chaîne de caractère est plus simple.
Mais je ne sais vraiment pas comment faire pour écrire dans une cellule…