Code VBA coller plage cellule dans feuilles variables

CHLOE90

XLDnaute Junior
Bonjour le Forum,

J'ai un souci à vous soumettre, et bien qu'ayant recherché et trouvé tout un tas de sujets proches de mon besoin, aucun ne répond vraiment à ce que je recherche.
Je voudrai en lançant une macro d'une feuille X pouvoir copier la plage A2:K28 et la coller (sans les formules) dans une nouvelle feuille qui serait générée et qui s'appellerait scénario1
Puis réitérer l'opération après avoir changé des paramétres sur la feuille X en cliquant sur ma même macro recopier à nouveau la même plage de cellule A2:K28 et la coller sur une nouvelle feuille qui prendrait le nom de Scénario2 etc etc si j'ai encore d'autres scénarios.

Merci pour votre aide car je suis bloquée.

Chloé
 

camarchepas

XLDnaute Barbatruc
Re : Code VBA coller plage cellule dans feuilles variables

Bonjour Chloé,

Peut être comme ceci (à mettre dans un module standard)

Code:
Sub scénario()
Dim x As Long
ThisWorkbook.Sheets.Add after:=Sheets(Sheets.Count)
On Error Resume Next
Do
 Err.Clear
 x = x + 1
 ActiveSheet.Name = "Scénario " & x
Loop Until Err.Number = 0
On Error GoTo 0
Sheets(ActiveSheet.Name).Range("A2:K28") = Sheets("Feuil1").Range("A2:K28").Value
 

End Sub
 

Staple1600

XLDnaute Barbatruc
Re : Code VBA coller plage cellule dans feuilles variables

Bonsoir à tous, camarchepas ;)

Une autre possibilité ;)
Code:
Sub CopieFeuilleScenario()
Sheets("scenario").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "scenario" & Sheets.Count - 1
End Sub
NB: Fonctionne si au départ le classeur ne contient qu'une seule feuille nommée scenario.
 

Si...

XLDnaute Barbatruc
Re : Code VBA coller plage cellule dans feuilles variables

salut

Staple, il te faut rajouter une ligne pour remplacer les formules copiées par leur valeur.
Tant qu'à faire je joins ma version avec un bouton "explicite".
 

Pièces jointes

  • Sauvgardes onglet successives.xlsm
    26 KB · Affichages: 26

Staple1600

XLDnaute Barbatruc
Re : Code VBA coller plage cellule dans feuilles variables

Bonsoir Si...

Tu veux dire une ligne d'instruption de plus ;) ?

Soit Si... ;)

Code:
Sub CopieFeuilleScenarioBis()
Sheets("scenario").Copy After:=Sheets(Sheets.Count)
ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value
ActiveSheet.Name = "scenario" & Sheets.Count - 1
End Sub
 
Dernière édition:

Si...

XLDnaute Barbatruc
Re : Code VBA coller plage cellule dans feuilles variables

re

Bonjour le Forum,
...
Je voudrai en lançant une macro d'une feuille X pouvoir copier la plage A2:K28 et la coller (sans les formules)

ai-je mal lu ou me trompe-je ? avec ton instrumentalisation, tu n'as plus aucune formule - et de la plage et du reste !
Dans ce cas, Chloé n'aurait pas accepté le tour de passe-passe fourni par l'Illusionniste de service:D .
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : Code VBA coller plage cellule dans feuilles variables

Re

Si...
Sans les formules ce n'est pas sans certaines formules ;)
Donc j'ai opté pour le radical, camarade ;)
Ou alors on s'hasardera à dire que c'est là peut-être un hommage déguisé de ma part au super clochard. ;)
Now watch what you say or they'll be calling you a radical,
Liberal, fanatical, criminal.
Won't you sign up your name, we'd like to feel you're
Acceptable, respectable, presentable, a vegetable!

EDITION : Pour faire plaisir à Si..., voici une version moins violente ;)
Code:
Sub CopieFeuilleScenarioBisSoft()
Sheets("scenario").Copy After:=Sheets(Sheets.Count)
ActiveSheet.[A2:K28].value = ActiveSheet.[A2:K28].value
ActiveSheet.Name = "scenario" & Sheets.Count - 1
End Sub
 
Dernière édition:

Statistiques des forums

Discussions
312 321
Messages
2 087 229
Membres
103 497
dernier inscrit
JP9231