Je n'arrive pas à construire 2 macros qui va me permettre de réaliser l'action suivante : Macro 1 : Pour toutes les feuilles du classeur, réalisé le code suivant (copi toute les cell et les colles avec collage spé valeur)
Macro 2 : Pour toutes les feuilles du classeur à l'expetion de la feuille "MENU", réalisé le code suivant (copi toute les cell et les colles avec collage spé valeur)
C'est facile lorsque l'on manipule le VBA mais g toujours des problèmes à cela. J'espère que vous pourrez m'aider sur ce point.
Sub valeurseule()
For i = 1 To Worksheets.Count
If Worksheets(i).Name <> "MENU" Then
Worksheets(i).UsedRange.Cells.Value = _
Worksheets(i).UsedRange.Cells.Value
End If
Next
End Sub
Sub valeurseuleTCD()
For i = 1 To Worksheets.Count
If Worksheets(i).Name <> "MENU" And Worksheets(i).PivotTables.Count = 0 Then
Worksheets(i).UsedRange.Cells.Value = _
Worksheets(i).UsedRange.Cells.Value
End If
Next
End Sub
Ton premier message ne mentionnait pas de TCD
Donc ce code fonctionne avec un classeur contenant des feuilles contenant des formules dont on ne veut que les valeurs seules.
Re
Il ne se passe rien. En fait dans chacune de mes feuilles j'ai des TCD et/ou des formules.
L'objectif principal de de cette macro est de remplacer le contenu des TCD par leur valeur. Aujourdhu'i j'utilise le code suivant sur chaque feuille pour les supprimer. L'objectif de la nouvelle macro était donc de coupler ce code avec une boucle ou un code qui réalise l'opération sur chacune des feuilles, m'évitant ainsi d'avoir à répéter l'action autant de fois qu'il y a de feuille.
Sub valeurseuleTCDa()
For i = 1 To Worksheets.Count
If Worksheets(i).Name <> "MENU" Then
With Worksheets(i).UsedRange
.Copy
.PasteSpecial xlPasteValues
Application.CutCopyMode = False
End With
End If
Next
End Sub
For each sh in sheets
sh.Cells.Copy
sh.Cells.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
next sh