Code VBA pour copier un onglet en fonction du contenu d'une cellule

tamatave33

XLDnaute Junior
Bonsoir,

Dans un classeur Excel, j'ai un onglet qui sert de modèle. Dans cet onglet j'ai des macros pour :
- renommer cet onglet en fonction du texte contenu dans une cellule (cellule F9),
- masquer des lignes en fonction de la valeur de la cellule F11.

J'ai essayé d'écrire une macro pour copier cet onglet et le renommer, lorsque la valeur de la cellule G205 est "Oui" et je n'y arrive pas (mes compétences en VBA étant très limitées).

Si quelqu'un peut m'aider ...

Merci d'avance.
 

Pièces jointes

  • Exemple copie onglet.xls
    132.5 KB · Affichages: 70

Calvus

XLDnaute Barbatruc
Bonsoir tamatave33,

Code:
Sub Créer()
nom_onglet = Range("F9")
If Range("G205") = "Oui" Then
Range("A1:L204").Select
Cells.Copy
Sheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Name = nom_onglet
ActiveSheet.Paste
End If
End Sub

Regarde si cela te convient.
A+
 

Pièces jointes

  • Exemple copie onglet modifié.xls
    145.5 KB · Affichages: 64

Jacky67

XLDnaute Barbatruc
Bonjour,
Une proposition qui......
Création d'onglet ayant comme NOM celui saisie en E9
avec le nombre de niveau spécifié en E11
Les nouveaux onglets doivent être construit à partir de la feuille "Matrice"
 

Pièces jointes

  • Exemple copie onglet.xlsm
    95.9 KB · Affichages: 89

tamatave33

XLDnaute Junior
Bonjour à tous,

Merci pour vos réponses, mais j'ai quelques difficultés ...
Tout d’abord je pense que ma demande était mal rédigée. Le but est d'avoir un onglet qui serve de modèle, mais qui est rempli en fonction du projet.
Si on a besoin d'un autre onglet, on indique "Oui" en G205. Lorsqu'on copie l'onglet les cellules en fond jaune sont remises à zéro (ce que je n'avais dit au départ, car je pense pouvoir le faire). Le but est de créer de nouvel onget, à chaque fois qu'on on a besoin.
Pour la réponse de Calvus, cela pourrait fonctionner si les codes VBA sont aussi recopiés dans le nouvel onglet. est-ce possible ?
pour la solution proposée par belkacem64 pout-on compléter la macro par les codes que j'avais pour effacer le contenu des cellules masquées ?
Dans la solution proposée par jacky67, j'ai un message d'erreur au niveau de l'instruction ".Shapes("Button 1").Cut"
Merci encore pour votre aide.
 

Discussions similaires

Statistiques des forums

Discussions
284 906
Messages
1 864 037
Membres
155 741
dernier inscrit
khayal boutaina
Haut Bas