[Macro] Supprimer les Données de plusieurs cellule

Bonjour à tous et à toute.

Je me présente rapidement je m appelle Guillaume et je travaille dans un camping en Espagne.

Je suis en train de "simplifier" le système de facturation afin d'avoir une numérotation automatique de facture.

La macro étant faite il se trouve que j'ai un problème pour supprimer les données des cellules.

Voila la macro en question.

Sub Proposition()

Dim Sh As Worksheet

Dim Nom As String

Dim i As Integer

Application.ScreenUpdating = False

Nom = ActiveSheet.Name '

Nom = Left(Nom, Len(Nom) - 4)

Do

i = i + 1

Set Sh = Nothing

On Error Resume Next

Set Sh = Sheets(Nom & Format(i, "0000"))

On Error GoTo 0

Loop Until Sh Is Nothing

ActiveSheet.Copy After:=Sheets(Sheets.Count)

With ActiveSheet

.Name = Nom & Format(i, "0000") ,

.Range("A1").Value = i

.Range("A20:A42", "B10:B16", "F7:F16", "C45;D47;H44;H46;H47").ClearContents

End With

End Sub

Voila le probleme c'est que la macro me supprime quasiment toutes mes données lorsque une nouvelle facture est crée.

Alors que je voudrais supprimer de la cellule A20 à A42 , de B10 a B16, de F7 a F16 et des cellules individuelles C45, D47, H44, H46, H47. Ca bug là on c'est en gras.

J'ai tenté quelques péripéties sur la macro de base mais rien a faire (puis faut dire je suis très mauvais donc ça aide pas )

Voila voilou et merci d'avance !

Cordialement

109facture-camping.xlsm (84.12 Ko)

Salut le forum

C'est normal car With ActiveSheet fait référence à la nouvelle feuille créer

With Sheets("2012 -") serait plus logique

Mytå

Bonsoir

Bonsoir Mytå

Essayes en enlevant les guillemets intermèdiaires et surtout les ; (point-virgule) à remplacer par des , (virgule)

.Range("A20:A42, B10:B16, F7:F16, C45,D47,H44,H46,H47").ClearContents 
Rechercher des sujets similaires à "macro supprimer donnees"