Problème macro VBA
Résolu
Soph
-
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 12263 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Je suis entrain de faire un modèle de facture sur Excel et j'ai créer une macro qui permet de mettre la facture à zéro. j'aimerai également que cette macro permette la conservation d'un historique de facture. J'ai réussi pour l'instant mais le problème c'est que mon historique de facture est présenté sous forme de tableau et l'historique se colle toujours dans la première ligne.
Sous VBA, ma macro se présente comme cela :
ActiveWindow.SmallScroll Down:=18
Range("A50:K50").Select
Selection.Copy
Sheets("Historique de factures").Select
Range("A4").Select CETTE CELLULE DOIT SE MODIFIER A CHAQUE ENREGISTREMENT
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Facture automatisée").Select
Range("F53").Select
ActiveWindow.SmallScroll Down:=-15
Range("J9:K9").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("A18:B29").Select
Selection.ClearContents
Range("E18:E29").Select
Selection.ClearContents
Range("F31").Select
Selection.ClearContents
Range("F33").Select
Selection.ClearContents
Range("J34").Select
Selection.ClearContents
ActiveWindow.SmallScroll Down:=6
Range("G37").Select
Selection.ClearContents
Range("C14").Select
Selection.ClearContents
ActiveWindow.SmallScroll Down:=-18
End Sub
Pourriez vous m'aider svp.
Merci d'avance
Je suis entrain de faire un modèle de facture sur Excel et j'ai créer une macro qui permet de mettre la facture à zéro. j'aimerai également que cette macro permette la conservation d'un historique de facture. J'ai réussi pour l'instant mais le problème c'est que mon historique de facture est présenté sous forme de tableau et l'historique se colle toujours dans la première ligne.
Sous VBA, ma macro se présente comme cela :
ActiveWindow.SmallScroll Down:=18
Range("A50:K50").Select
Selection.Copy
Sheets("Historique de factures").Select
Range("A4").Select CETTE CELLULE DOIT SE MODIFIER A CHAQUE ENREGISTREMENT
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Facture automatisée").Select
Range("F53").Select
ActiveWindow.SmallScroll Down:=-15
Range("J9:K9").Select
Application.CutCopyMode = False
Selection.ClearContents
Range("A18:B29").Select
Selection.ClearContents
Range("E18:E29").Select
Selection.ClearContents
Range("F31").Select
Selection.ClearContents
Range("F33").Select
Selection.ClearContents
Range("J34").Select
Selection.ClearContents
ActiveWindow.SmallScroll Down:=6
Range("G37").Select
Selection.ClearContents
Range("C14").Select
Selection.ClearContents
ActiveWindow.SmallScroll Down:=-18
End Sub
Pourriez vous m'aider svp.
Merci d'avance
A voir également:
- Problème macro VBA
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Excel compter cellule couleur sans vba - Guide
2 réponses
Bonjour Soph
macro légèrement simplifiée, essaies
au déclenchement de la macro tu dois être sur la feuille "facture automatisée"
macro légèrement simplifiée, essaies
au déclenchement de la macro tu dois être sur la feuille "facture automatisée"
Sub archiver() With Sheets("Historique de factures") ligvid = .Range("A65536").End(xlUp).Row + 1 .Range(Cells(ligvid, 1), Cells(ligvid, 11)).Value = Sheets("Facture automatisée").Range("A50:K50").Value End With plage = Union(Range("F53"), Range("J9:K9"), Range("A18:B29"), Range("E18:E29"), Range("F31"), _ Range("F33"), Range("J34"), Range("G37"), Range("C14")).ClearContents End Sub
Bonjour,
Voici ton code avec quelques modifications :
EDIT : je n'ai pas vu la petite erreur avec le "select" du range("A65536"). Ce code fonctionne mieux :
Cordialement,
-- Tout problème à sa solution. S'il n'y a pas de solution, ou est le problème? --
Voici ton code avec quelques modifications :
Range("A50:K50").Copy With Sheets("Historique de factures") .Range("A65536").End(xlUp).Offset(1, 0).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End With Range("J9:K9").ClearContents Range("A18:B29").ClearContents Range("E18:E29").ClearContents Range("F31").ClearContents Range("F33").ClearContents Range("J34").ClearContents Range("G37").ClearContents Range("C14").ClearContents End Sub
EDIT : je n'ai pas vu la petite erreur avec le "select" du range("A65536"). Ce code fonctionne mieux :
Range("A50:K50").Copy With Sheets("Historique de factures") .Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End With Range("J9:K9").ClearContents Range("A18:B29").ClearContents Range("E18:E29").ClearContents Range("F31").ClearContents Range("F33").ClearContents Range("J34").ClearContents Range("G37").ClearContents Range("C14").ClearContents
Cordialement,
-- Tout problème à sa solution. S'il n'y a pas de solution, ou est le problème? --