Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.
  • Initiateur de la discussion Initiateur de la discussion spino91
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

spino91

Guest
J'ai mis en place une macro qui permet de créer un nouvel onglet, qui est renommé automatiquement "fiche nouvelle".
Certaines infos sont automatiquement reportées dans un autre onglet "récapitulatif" et ils sont positionnés à la dernière ligne vide des colonnes destinées.
Ce que je souhaiterais dans un premier temps c'est que chaque onglet créé n'est pas le même nom (sinon erreur) et que le nom deviennent: "Fiche 1", "Fiche 2", "Fiche 3", ... aulieu de "fiche nouvelle".
Mais aussi, que l'une des infos reportées sur le "récapitulatif" permet d'être renvoyé directement sur l'onglet en question, en cliquant dessus et pour chaque onglet (utilisation d'un lien hypertexte ou double clique sur cellule).

Ci dessous la macro qui permet d'exécuter ce que j'ai expliqué en préambule:

Sub NouvelleFiche()
Sheets("Fiche").Select
Sheets("Fiche").Copy after:=Sheets(2)
Sheets("Fiche (2)").Select
Sheets("Fiche (2)").Name = "Fiche Nouvelle"

Sheets("Fiche Nouvelle").Range("C53").Copy
Sheets("RECAPITULATIF").Activate
ActiveSheet.Range("D65536").End(xlUp)(2).Select
ActiveSheet.Paste Link:=True

Sheets("Fiche Nouvelle").Range("E53").Copy
Sheets("RECAPITULATIF").Activate
ActiveSheet.Range("E65536").End(xlUp)(2).Select
ActiveSheet.Paste Link:=True

Sheets("Fiche Nouvelle").Range("F3").Copy
Sheets("RECAPITULATIF").Activate
ActiveSheet.Range("B65536").End(xlUp)(2).Select
ActiveSheet.Paste Link:=True

Sheets("Fiche Nouvelle").Range("F6").Copy
Sheets("RECAPITULATIF").Activate
ActiveSheet.Range("F65536").End(xlUp)(2).Select
ActiveSheet.Paste Link:=True

Sheets("Fiche Nouvelle").Range("F8").Copy
Sheets("RECAPITULATIF").Activate
ActiveSheet.Range("A65536").End(xlUp)(2).Select
ActiveSheet.Paste Link:=True

Sheets("Fiche Nouvelle").Range("F9").Copy
Sheets("RECAPITULATIF").Activate
ActiveSheet.Range("C65536").End(xlUp)(2).Select
ActiveSheet.Paste Link:=True

Sheets("Fiche Nouvelle").Range("I6").Copy
Sheets("RECAPITULATIF").Activate
ActiveSheet.Range("G65536").End(xlUp)(2).Select
ActiveSheet.Paste Link:=True

End Sub

Je vous remercie d'avance pour toute l'aide que vous pourriez m'apporter.

Cordialement
 
Re : Aide Macro VBA

Bonsoir

Histoire d'alléger ton code existant

Code:
Sub NouvelleFiche()
Dim ADRS, ADRD, i As Long
Sheets("Fiche").Copy after:=Sheets(2)
ActiveSheet.Name = "Fiche Nouvelle"

ADRS = Split("C53+E53+F3+F6+F8+F9+I6", "+")
ADRD = Split("D+E+B+F+A+C+G", "+")

For i = LBound(ADRS) To UBound(ADRS)
Sheets("Fiche Nouvelle").Range(CStr(ADRS(i))).Copy
With Sheets("RECAPITULATIF")
    .Activate
    .Range(CStr(ADRD(i)) & "65536").End(xlUp)(2).Select
    .Paste Link:=True
End With
Next i
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
10
Affichages
741
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…