Fonction VBA pour copier coller une feuille

Bou6Fedi Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   -
j'ai crée une fonction qui copie colle une feuille, pourtant lorsque j’appelle cette fonction j'arrive pas a comprendre pourquoi les feuilles ne sont pas crée
voila mon code

Public Function CopyPast(rg As Range) As Integer

Dim sheetName As String
Dim pos As Integer

sheetName = rg.Value
pos = rg.Row

ActiveWorkbook.Sheets("template").Copy _
after:=ActiveWorkbook.Sheets(pos)
ActiveSheet.Name = sheetName
CopyPast = pos

End Function
A voir également:

3 réponses

ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Tu peux l'exécuter pour chaque cellule de la sélection
Public sub Machin()
dim rg as range
for each rg in selection
...
...
next rg
End sub
1
Bou6Fedi Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Ok merci bien
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
De rien

Si c'est fini, peux tu mettre le sujet à résolu (en dessous du titre de ton premier message)

Bonne fin de journée
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Bonjour

Une fonction est fate pour renvoyer une valeur et non pour modifier l'environnement
Utilises plutot une procédure
Public sub Machin(...)

...

End sub

Cdlmnt
0
Bou6Fedi Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
Merci ccm81 pour ton aide mais comme ca je ne peut pas l'appeler a partir d'une cellule excel (je ne peux pas faire =Machin(...) dans une cellule excel)
0
ccm81 Messages postés 10909 Date d'inscription   Statut Membre Dernière intervention   2 433
 
Mais tu peux lui affecter un raccourci clavier, la macro s'exécutant sur la cellule selectionnée.
Public sub Machin()
dim rg as range
set range = selection
...
...

End sub

Cdlmnt
0
Bou6Fedi Messages postés 10 Date d'inscription   Statut Membre Dernière intervention  
 
D'accord ça a marché maintenant, mais y'a pas une plus belle façon de faire ça, suppose que j'ai 10000 cellule donc a chaque fois je dois sélectionner la cellule + Raccourci Clavier,
0