Bouton pour effacer la dernière ligne saisie d'une feuille

Bonjour, bonjour,

Tout est dans le titre !

J'ai une feuille excel 2007 avec une succession de lignes à saisir comprenant plusieurs colonnes.

J'aimerai un bouton pour effacer la dernier ligne saisie (en cas d'erreur) en tenant compte que certaines colonnes contenant des fonctions de calcul ne doivent pas être effacer.

Je ne peux donc pas supprimer la ligne mais effacer certaines cellules de cette même ligne.

Cela concernera toujours les mêmes colonnes et toujours la dernière ligne saisie.

Merci

peux-tu joindre un fichier exemple avec ce que tu souhaites concrètement (situation avant exécution de la macro, situation après)

re

Au moyen de mon UF, :

je saisie des infos dans chaque txtbox qui s'insèrent dans une feuille excel au moyen du code :

Private Sub BTCValider_Click()
'déclaration de variable
    Dim DernLigne As Long
'insérer infos en dernière ligne
    DernLigne = Range("B" & Rows.Count).End(xlUp).Row + 1
'déclarer contenu des cellules
    Range("B" & DernLigne) = CDate(TxBDate)
    Range("F" & DernLigne) = CBxCat
    Range("G" & DernLigne) = CBxObjet
    Range("H" & DernLigne) = TxBCodeClient
    Range("I" & DernLigne) = TxBDoc
    Range("J" & DernLigne) = TxBDési
    Range("M" & DernLigne) = TxBCrédit.Value
    Range("N" & DernLigne) = TxBDébit.Value

Une fois les infos validées et insérées dans la feuille, s'il y a une erreur, j'aimerai effacer les saisies entrées sur la dernière ligne de la feuille sans supprimer la ligne.

Comme tu vois sur le code, seules quelques cellules sont informées (on dit incrémenté peut-être ?), les autres contiennent des formules, d'où l'importance de ne pas supprimer toute la ligne, surtout qu'il y a encore d'autres colonnes après la N. Tu avais compris que B, F, G, H....etc... étaient les colonnes de la feuille excel ?

Voilà est-ce assez clair et concret ?

a+

 Sub effacederligne()
'déclaration de variable
   Dim DernLigne As Long
'insérer infos en dernière ligne
   DernLigne = Range("B" & Rows.Count).End(xlUp).Row
'déclarer contenu des cellules
   Range("B" & DernLigne) = ""
    Range("F" & DernLigne) = ""
    Range("G" & DernLigne) = ""
    Range("H" & DernLigne) = ""
    Range("I" & DernLigne) = ""
    Range("J" & DernLigne) = ""
    Range("M" & DernLigne) = ""
    Range("N" & DernLigne) = ""
end sub
 

J'y crois pas ! pourquoi n'y ai-je pas pensé ??

Remplacer la ligne par du vide en fin de compte !!

C'est une sacrée tournure d'esprit qu'il faut choper. Mais on prend goût à se faire assister et du coup on (je) ne réfléchis plus !

Merci et bravo

je vais tester tout çà, si j'ai problème je reviendrais

A+

RiRidenimes

Rechercher des sujets similaires à "bouton effacer derniere ligne saisie feuille"