Salut Jeny,
Comme tu as des questions à étages multiples, il serait plus intéressant de les traiter une par une car, si j'ai pu répondre à la première, je ne suis pas sûr de pouvoir t'aider pour la suite. Or, apparemment, nous ne sommes plus que tous les deux sur ce fil...
Après quelques recherches, il n'est pas évident de retrouver le texte d'une zone de texte en VBA, voici ce que j'ai trouvé :
Temp = Shapes("Zone de texte 1").TextFrame.Characters.Text
et comment l'utiliser dans la macro :
Private Sub CommandButton4_Click()
Dim Temp As String
Temp = "C:\Documents and Settings\a\Bureau\devis\" & Shapes("Zone de texte 1").TextFrame.Characters.Text & ".xls"
ActiveWorkbook.SaveAs Filename:=Temp, FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Avant de tester ce code, vérifie le nom de ta zone de texte et, au besoin, modifie "Zone de texte 1" dans le code.
Quant à enregistrer un seul onglet, je ne sais pas le faire et cela me paraît difficile à concevoir si ton devis est rempli avec des données appartenant à d'autres feuilles du classeur...
Pose une nouvelle question en ce sens, je serai heureux que tu obtiennes satisfaction et nous apprendrons tous quelque chose.
A+
Horatio