Copier et renommer feuille sans formule

Résolu/Fermé
Giroen Messages postés 1 Date d'inscription vendredi 3 septembre 2021 Statut Membre Dernière intervention 14 septembre 2021 - 14 sept. 2021 à 13:58
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 - 16 sept. 2021 à 11:11
Bonjour,

j'ai une macro qui copie et renomme une feuille en fonction d'une cellule.
Cette dernière ajoute une feuille avec les formules.

comment puis-je adapter la macro pour quelle fasse une copie sans les formules mais tout en changeant le nom

Sub Copyrenameworksheet()

Dim ws As Worksheet
Set wh = Worksheets(ActiveSheet.Name)
ActiveSheet.Copy after:=Worksheets(Sheets.Count)
If wh.Range("I3").Value <> "" Then
ActiveSheet.Name = wh.Range("I3").Value

End If
wh.Activate

End Sub


Je suis assez nul avec VBA et je n'arrive pas à adapter cette macro.

Merci pour votre aide



Configuration: Windows / Edge 93.0.961.47
A voir également:

5 réponses

ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
Modifié le 14 sept. 2021 à 14:27
Bonjour

Essaies ceci

Option Explicit

Sub Copyrenameworksheet()
Dim wh As Worksheet, nomf As String
Set wh = Sheets("Feuil1")
nomf = wh.Range("I3").Value
wh.Copy after:=Worksheets(Sheets.Count)
If wh.Range("I3").Value <> "" Then
  ActiveSheet.Name = nomf
  ActiveSheet.Cells.SpecialCells(xlCellTypeFormulas).ClearContents
End If
wh.Activate
End Sub

Cdlmnt
0
Merci ccm81

La macro efface tout, j’aimerais quel transforme les formules en valeur, Je me suis mal exprimé.

Salutations
0
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
14 sept. 2021 à 18:58
Essaies comme çà

Option Explicit

Sub Copyrenameworksheet()
Dim wh As Worksheet, nomf As String, c As Range
Set wh = Sheets("Feuil1")
nomf = wh.Range("I3").Value
wh.Copy after:=Worksheets(Sheets.Count)
If wh.Range("I3").Value <> "" Then
  ActiveSheet.Name = nomf
  For Each c In ActiveSheet.Cells.SpecialCells(xlCellTypeFormulas)
    c.Copy
    c.Select
    Selection.PasteSpecial Paste:=xlPasteValues
  Next c
End If
wh.Activate
End Sub

Cdlmnt
0
Merci
Top elle fonctionne à merveille

Salutations
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 10854 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 26 avril 2024 2 404
16 sept. 2021 à 11:11
Bonjour

Si c'est fini, peux tu mettre le sujet à résolu (en haut dans ton premier message)


Cdlmnt
0