[VBA-E] Questions en Vrac...
Bonsoir,
Tout d'abord, je tiens à m'excuser de mon ignorance en vba : mon dada, c'est plutôt le C sur des systèmes embarqués, sous nux... Donc bien loin de vba... ;)
Donc pataper si les questions sont débiles... :P
Pour rendre service à mon père, je lui développe quelques macros. J'ai pas mal butiné sur le woueb, et j'ai réussi à faire plus ou moins ce que je voulais.
Mais malgré tout, j'ai encore quelques questions...
1)
Tout d'abord, j'ai une macro qui bosse sur une feuille. Pour le moment, afin de référencer ladite feuille, j'ai codé en dur ceci :
Code:
1 2
|
Set mafeuille = ThisWorkbook.Worksheets("Feuil1") |
Ce que j'aurais voulu, c'est récupérer dynamiquement le nom de la feuille en question.... J'ai bien essayé avec une inputbox, pour récupérer une string que j'aurais passé en index à Worksheets, mais ça plantouille lamentablement....
2)
Dans une autre macro, je cherche à laisser la possibilité à l'utilisateur d'ouvrir un classeur déjà existant (via Application.GetOpenFilename), mais j'aimerai qu'il puisse créer un classeur, avec une boite de dialogue similaire (de façon à la créer où il le souhaite, sans passer de chemin, ni rien...)
Je suis bien tombé sur la fonction GetSaveAsFilename, mais ça plante...
Alors soit je n'ai pas compris comment m'en servir, soit elle n'est pas faite pour ce que je crois...
Donc si vous avez quelques lumières, elles sont les bienvenues :)
Et désolé pour le roman ;)
Re: [VBA-E] Questions en Vrac...
Citation:
Envoyé par Pouic
1)
Tout d'abord, j'ai une macro qui bosse sur une feuille. Pour le moment, afin de référencer ladite feuille, j'ai codé en dur ceci :
Code:
1 2
|
Set mafeuille = ThisWorkbook.Worksheets("Feuil1") |
Ce que j'aurais voulu, c'est récupérer dynamiquement le nom de la feuille en question.... J'ai bien essayé avec une inputbox, pour récupérer une string que j'aurais passé en index à Worksheets, mais ça plantouille lamentablement....
tu peu aussi accéder au feuilles par leur numéro..
Code:
1 2
|
Set mafeuille = ThisWorkbook.Worksheets(1) |
la proprièté .Name te renvoi le nom..., tu peu pour le choix de la feuille utiliser un userform dans lequel tu colle une combobox..
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| '
' Initialise conbobox à l'ouverture
'
Private Sub UserForm_Initialize()
For Each f In ThisWorkbook.Sheets
ComboBox1.AddItem f.Name
Next
End Sub
Private Sub ComboBox1_Change()
MsgBox "Selection feuille " & ComboBox1
End Sub |
:wink: