Créer un classeur à partir onglet selon choix utilisateur

Bonjour,

Est-il possible de créer une checkbox permettant la création d'un nouveau classeur nommé "EXPORT" avec les onglets issu d'un classeur "DATA" selon les choix de l'utilisateur qui cocherait les onglets à exporter?

Je savais le faire à partir d'une msgbox mais au dela de deux options, j'ai du mal.

Merci

21data.xlsm (18.37 Ko)

Bonjour

J'ai pensé qu'un combobox serait mieux, mais si tu tiens à un checkbox je peux te le faire...

26data-v1.xlsm (24.09 Ko)

Bonjour,

Une solution par Userform avec liste de choix

Clique sur Export puis coche les feuilles que tu veux exporter dan ton nouveau classeur

Si ok, clique sur le V vert à coté du Bouton EDITER pour cloturer le fil lors de ta réponse

Amicalement

47data-v1.xlsm (25.00 Ko)

A GMB,

En réalité, je voudrais laisser le choix à l'utilisateur de selectionner les onglets à "exporter".

Mais je prends note de cette solution.

A Dan,

Dans mon cas précis, le nom des onglets n'ont pas de lien entre eux. J'ai plutôt PREPARATION, EXPEDITION, COMMANDE, BLOCAGE, etc

j'avais créé cet exemple avec onglet DATA1, DATA2, DATA3 et DATA4 pour illustrer mon besoin.

et j'ai déjà beaucoup de macro en fonctionnement qui reposent sur le nom des onglets donc je ne peux pas renommer.

Re,

ok ben c'était mieux de mettre le bon fichier. On le dit souvent...

Essaie comme ceci :

  • va dans l'userform à la macro --> Private Sub UserForm_Initialize()
  • Remplace cette ligne
If Left(Sheets(i).Name, 4) = "DATA" Then .AddItem Sheets(i).Name

par

 .AddItem Sheets(i).Name

Ce changement te donnera le nom de toutes tes feuilles dans la listbox.

Il te reste à choisir les bonnes à exporter

Amicalement

ok super!

Merci beaucoup pour ton aide.

J'avais mis un exemple parce que mon fichier est un peu gros et que je ne voulais pas polluer.

Cordialement,

Bonjour,

De retour de congé, j'ai detecté une anomalie dans la macro export: si la création des onglets se réalise bien, il n'y a malheureusement pas de contenu, sauf pour le premier onglet exporter?

Qui pourrait m'aider?

Merci

37dev-v6.xlsm (103.77 Ko)

Re

Logique car tu crées une fueille dans le nouveau classeur avec le nom de la feuille du fichier où se trouve le code

Dans l'USF export, modifie la partie de code après ELSE

Private Sub CommandButton1_Click()
.....
.....
        Else
        ThisWorkbook.Sheets(nomfeuille).Copy After:=ActiveWorkbook.Sheets(Sheets.Count)
        End If
.....
.....
End Sub

Si ok, clique sur le v vert à coté du bouton EDITER pour cloturer le fil

Amicalement

C'est parfait!!

Hyper réacttif en plus!

Rechercher des sujets similaires à "creer classeur partir onglet choix utilisateur"