Microsoft 365 Problème lors réinitialisation

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

AIXELS

XLDnaute Occasionnel
Bonjour à tous les Amis du Forum.
Je reviens vers vous une fois de plus.
Mon problèmes est le suivant :
J'ai développé une application en m'inspirant de programmes que j'ai trouvés.
Le but de cette application est le suivi de la vente et le rendu de monnaie lors
d'un tournoi de football organisé par une association à but non lucratif.

Les saisies et rendus de monnaie fonctionnent bien.
Mais si je veux réinitialiser les données : effacer les anciennes données
la saisie n'est plus prise en compte.

Je vous joints le fichier.
Merci pour votre aide.
bien cordialement.
 

Pièces jointes

Bonjour,

Proposition :
VB:
Sub RENDRE_MONNAIE()
' Réinitialisation du rendu monnaie et achats

    Range("DEBIT").ClearContents
    Range("H1").ClearContents

    With Range("t_Ventes").ListObject
        If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete
    End With

    Application.Goto Range("t_Ventes").Resize(1, 1)

End Sub
 
Dernière édition:
Bonjour,

Proposition :
VB:
Sub RENDRE_MONNAIE()
' Réinitialisation du rendu monnaie et achats
Dim Lastline As Integer

    Range("DEBIT").ClearContents
    Range("H1").ClearContents

    With Range("t_Ventes").ListObject
        If Not .DataBodyRange Is Nothing Then .DataBodyRange.Delete
    End With

    Application.Goto Range("t_Ventes").Resize(1, 1)

End Sub
Merci pour ta réponse @TooFatBoy
COPIER_ACHATS ne fonctionne pas.
il ne recopie pas les achats effectués.
Merci pour ton aide.
Bien cordialement.

VB:
Sub COPIER_ACHATS()
    Dim ZoneToCopy As Range
    With Sheets("Ventes").ListObjects("t_Ventes")
        Set ZoneToCopy = .DataBodyRange(.ListRows.Count, 1).Resize(, 7)
    End With

    With Sheets("Caisse")
        .Activate
        .Range("C6").Resize(7, 1) = Application.WorksheetFunction.Transpose(ZoneToCopy)

    End With


    Usf_RENDRE_MONNAIE.Show 0

End Sub
 
Ta macro "COPIER_ACHATS" essaye de copier tout le tableau des ventes (H5:Nx), puis de coller le tout à partir de la cellule C6 de la feuille "CAISSE".
(je passe sur le Transpose)

T'es sûr que c'est vraiment exactement ça que tu veux faire ???



Si c'est en fait la ligne située au-dessus du tableau que tu veux copier/coller, alors il vaut mieux mettre des formules dans les cellules C6:C12.

Mais si tu veux absolument garder une macro inutile, je te propose ceci :
VB:
Sub COPIER_ACHATS()
'
Dim ZoneToCopy As Range

    Set ZoneToCopy = Range("t_Ventes[#Headers]").Resize(, 7).Offset(-1, 0)

    With Sheets("Caisse")
        .Activate
        .Range("C6").Resize(7, 1) = Application.WorksheetFunction.Transpose(ZoneToCopy)
    End With

    Usf_RENDRE_MONNAIE.Show 0

End Sub
 

Pièces jointes

Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
723
Retour