Tableau de saisie numerique avec incrementation auto

Bonjour a tous

Je monte ma boite et je viens d'acquerir Exel que je n'utilisais presque pas avant. Juste les fct simple comme tout le monde

Or, je vais recevoir des paiements en ticket resto. seulement pour les comptabiliser, je galere : je suis obligé de les classer manuellement dans l'ordre pour les rentrer dans un tableau afin de faire une feuille de versement pour ma compta et l'organisme de traitement.

Je souhaite donc creer un tableau qui fonctionnerait comme suis :

1 case pour saisir les montants qui incrementerait un tableau au fur et a mesure des montants, genre

je tape 7,40

une ligne est cree avec 7,40 X 1 = 7,40

je tape 8,65

une ligne est cree avec 8,65 X 1 en dessous de ma premiere ligne

je retape 7,40

la ligne s'incremente 7,40 X 2 = 14,80

je tape 6,10

une ligne 6,10 X 1 = 6,10 au dessus des autres lignes

etc etc.

en fait il n'y a qu'une seule case de saisie

est ce possible? qq peu m'aider, merci

Bonsoir sylvainR,

Tu trouveras ci-joint ma proposition qui fonctionne en l'état. Pour information, elle repose sur la macro suivante à mettre dans Feuil1 au niveau de l'éditeur VBA :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Dim L As Byte, C As Byte, LigneLibre As Byte

'Faut-il effacer le tableau ?
'----------------------------
If UCase(Range("B1")) = "NET" Then
    Application.GoTo Reference:="Données"
    Selection.ClearContents
    Range("B1").Select
    Fois1 = False
    Exit Sub
End If

'Exécution une fois sur 2 de cette macro
'---------------------------------------
If Fois1 = True Then
    Fois1 = False
    Exit Sub
Else
    Fois1 = True
End If

'Détermination de la 1ère ligne libre
'------------------------------------
For L = 5 To 20
    If Cells(L, 1) = "" And L = 5 Then LigneLibre = 5: Exit For
    If Cells(L, 1) = "" Then LigneLibre = L: Exit For
Next L

'Valeur saisie pas correcte
'--------------------------
If Not IsNumeric(Range("B1")) Or Range("B1") <= 0 Or Range("B1") > 50 Then
    Fois1 = False
    GoTo Suite
End If

'Recherche si la valeur saisie existe
'------------------------------------
If Range("B1") > 0 Then
    For L = 5 To 20
        If Cells(L, 1) = Range("B1") Then
            Cells(L, 2) = Cells(L, 2) + 1
            GoTo Suite
        End If
    Next L

    Cells(LigneLibre, 1) = Range("B1")
    Cells(LigneLibre, 2) = 1
End If

Suite:
    Range("B1").Select
    Range("B1").ClearContents

End Sub

Ne pas oublier de mettre dans Module1 :

Public Fois1 As Boolean
66solution-01.xls (19.50 Ko)

Bonjour SylvainR

autre proposition

Cordialement

Bob

84sylvainr.zip (9.29 Ko)

WHAOUUUU

Merci, merci, merci

c'est super, vous etes rapide et efficace

tres cool

a bientot

Rechercher des sujets similaires à "tableau saisie numerique incrementation auto"