![]() |
|
Forum
|
|
|
#1 (permalink) |
|
Guest
Messages: n/a
|
Je cherche à faire une macro qui puisse renommer une feuille.
J'ai insérer ceci dans ma macro: " Range("D5:E5").Select Selection.Copy Sheets("Report (2)").Select Sheets("Report (2)").Name = ActiveCell.Value " Mais lors de lancement de la macro, elle reste bloqué sur la dernière ligne (me signale une erreur)???? Pourquoi ce que j'ai écrit est faux, et comment résoudre cette erreur? Merci d'avance. |
| ANNONCES | |||
|
|
|
|
#2 (permalink) |
|
Guest
Messages: n/a
|
Salut jonquille !
Il y a un problème dans ta macro : Tu sélectionnes les cellules D5 et E5, tu fais un copier, puis tu le colles nul part....! quel intérêt...? En plus tu laisses un espace inutile à "Report (2)", au lieu de Report(2). Tu ne peux pas donner un nom pris dans deux cellules, ou alors tu dois concaténer d'abord. Voilà ta macro modifiée : Sub ActviceCell() Sheets("Report(2)").Select Sheets("Report(2)").Name = [D5] End Sub @ + Moa |
|
|
#3 (permalink) |
|
Guest
Messages: n/a
|
Re Jonquille !
En fait, si tu dois renommer souvent ta feuille Report(2), et que par conséquent, elle ne s'appelle plus forcément Report(2), il veut mieux écrire ta macro comme suit : Sub ActviceCell() Sheets(2).Select Sheets(2).Name = [D5] End Sub En effet, le (2) est le nom "Objet", qu'a ta feuille dans l'éditeur Vba. Donc en faisant comme cela, la macro, ne tiendra pas compte du nom de l'onglet que tu auras donné, mais de la feuille(2). Mais attention, pour moi c'est la feuille(2), mais cela peut-être la feuille(3) ou 50. Car dans la première macro, ta feuille une fois renommée, provoquera une erreur, puisque la macro, cherchera l'ancien nom. Alors que dans le deuxième cas, la macro renommera toujours la feuille 2 Ok ? @ + Moa |
|
|
#4 (permalink) |
|
Guest
Messages: n/a
|
J'ai tapé cette macro:
Sub ActviceCell() Sheets(3).Select Sheets(3).Name = [D5] End Sub Mais lorsque je la lance, j'ai un nouveaumessage d'erreur:* 'Erreur d'exécution '1004' Erreur définie par l'application ou par l'objet Est-ce lié à la macro? Merci |
|
|
#7 (permalink) |
|
Guest
Messages: n/a
|
Sub Bouton2_QuandClic()
'enregistre() Dim an As String numero = Range("a1") 'definir le nom d'une plage sous nom nom = Range("b2") 'definir le nom d'une plage sous numero ChDrive "c" 'definir l'endroit pour mettre le fichier ChDir "C:\Mes documents" ActiveWorkbook.SaveAs Filename:=(numero) & " " & (nom) 'avec la suite tu peux enregistrer ailleurs par exemple sur un serveur 'active la boite de dialogue enregistre sous 'Application.Dialogs(xlDialogSaveAs).Show End sub |
| ANNONCES | |
| Liens sociaux |
| Outils de la discussion | |
|
|