Exporter une worksheet particulière contenu dans un workbook avec ses macro

Bonjour à tous ,

Je possède un fichier qui regroupe certains utilitaires VBA dont je me sers quotidiennement. Ce fichier est lourd et j'aimerais exporter la feuille (l'utilitaire) dont j'ai besoin dans un nouveau classeur excel pour accélérer son utilisation.

Comme indiqué dans le titre, j'aimerais donc créer une macro qui exporte une worksheet particulière (l'onglet menu me permet de choisir la feuille à exporter) avec l'ensemble de ses macros associées. Les macros sont stockées dans un unique module.

Les macros que j'ai trouvées en ligne me permettent bien de créer un nouveau classeur excel (xlsm) avec la bonne feuille mais les macros ne sont pas fonctionnelles.

ci joint un petit fichier qui explique le problème.

Je suis preneur de vos idées et potentielles solutions

Bonne journée,

Maverick

Bonjour Maverick39

Quand je vois le code lié à des feuilles, dans un module... ce n'est pas comme ça qu'on procède

Mets chaque code dans la bonne feuille, ainsi tu pourras exporter la feuille avec son code,
de plis le code est à corriger, les "Select" sont franchement à éviter

Sub Feuille1()
    With Range("A1:E11")
      With .Interior
        .Pattern = xlSolid
        .PatternColorIndex = xlAutomatic
        .Color = 65535
        .TintAndShade = 0
        .PatternTintAndShade = 0
      End With
      .Borders(xlDiagonalDown).LineStyle = xlNone
      .Borders(xlDiagonalUp).LineStyle = xlNone
      With .Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
      End With
      With .Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
      End With
      With .Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
      End With
      With .Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ColorIndex = 0
        .TintAndShade = 0
        .Weight = xlThin
      End With
      .Borders(xlInsideVertical).LineStyle = xlNone
      .Borders(xlInsideHorizontal).LineStyle = xlNone
    End With
    Range("B4").FormulaLocal = "macro feuille 1"
End Sub

Sub ResetFeuille1()
  Range("S1").Copy
  Columns("A:E").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
  Application.CutCopyMode = False
  Range("B4").ClearContents
  Range("A1").Select
End Sub

A+

Salut,

De plus dans l'environnement VBE tu fais un clic droit sur la feuille à exporter, et tu sélectionnes exporter un fichier. Comme l'a si bien dis Bruno, si tu mets le code dans le module de la feuille, ta feuille sera exportée avec son code.

    Columns("A:B").Select
    Selection.ClearContents
    Range("A1").Select

Ne pas oublier non plus que ce genre de code s'applique à la feuille active du classeur actif. Si plusieurs classeurs sont ouvert le résultat peut être inattendu.

Rechercher des sujets similaires à "exporter worksheet particuliere contenu workbook macro"