Appartenance d'un nom d'onglet à une liste

Bonjour à tous,

J'ai été plongée dans l'univers VBA depuis peu et j'ai besoin de votre aide pour effectuer une tâche qui a l'air simple à l'oral mais qui n'en est rien en langage VB...

Voilà, j'ai un fichier excel avec plusieurs onglets : un onglet de paramètres "Param", puis des onglets nommés "A", "B", "C", "D"... Dans l'onglet "Param", colonne C, j'ai une liste de mes noms d'onglets qui s'appelle "CDPF". Et dans la colonne D, en face de chaque nom d'onglet, il y a une catégorie qui lui correspond. Exemple : "A" et "C" --> "RH" et "B" et "D" --> Développement

Je souhaiterais une macro qui me permettrait de sauvegarder mes onglets dans des fichiers séparément par catégorie. En gros, récupérer un fichier nommé "RH" avec mes onglets "A" et "C" et un autre fichier "Développement" avec mes onglets "B" et "D".

J'ai commencé à écrire le code ci-dessous :

Option Explicit

Public Const paramTab As String = "ParamTab"

Sub saveOnglet()

Dim ws

Dim newWk As Workbook

Dim NomOnglet As String

NomOnglet = ActiveSheet.Name

If Sheets(paramTab).Range("CDPF").Cells.Activate = NomOnglet Then

For Each ws In Worksheets

Set newWk = Workbooks.Add(xlWBATWorksheet)

ws.Copy newWk.Sheets(1)

newWk.SaveAs (ws.Name & ".xlsx")

newWk.Close

Set newWk = Nothing

Next ws

Else

MsgBox "Ca va pas !"

End If

End Sub

Mais mon If n'a pas l'air de fonctionner. Et pour l'instant, mon For ne permet que de sauvegarder un fichier par onglet, y compris l'onglet "Param"...

Pourriez-vous m'aider SVP ?

Merci infiniment par avance.

Bonjour,

Une solution

29exemple.xlsm (24.52 Ko)

A+

Bonjour frangy,

Ça marche très bien, merci beaucoup pour votre aide !!!

Re-bonjour,

Pardon, je suis vraiment pas douée...

J'ai ajouté une liste déroulante afin de pouvoir sauvegarder les classeurs un par un. Pour se faire, j'ai ajouter des lignes de condition If et ElseIf, mais quelque chose cloche. Le code ne prend pas la valeur que j'ai choisie dans ma liste déroulante.

Pourriez-vous regarder le fichier ci-joint et m'indiquer où est mon erreur SVP ?

Merci infiniment pour votre aide.

15exemple-2.xlsm (34.08 Ko)

Une réponse SVP ?

J'ai réellement besoin d'aide !!

Merci infiniment!

Bonjour pho_chan,

Voici une solution avec une ComboBox pour le choix des classeurs à prendre en compte.

Cette ComboBox se remplit automatiquement avec les catégories de la colonne D.

24exemple-2.xlsm (31.40 Ko)

A+

Rechercher des sujets similaires à "appartenance nom onglet liste"