Ho seguito le tue indicazioni e ho creato la maschera....
Hai ragione, questo tread non č concluso.
Impostare la propieta ControlSource per scrivere direttamente nelle celle č un po' complicato dato che dovrebbe essere reimposta di volta in volta per non scrivere e leggere sempre le stesse celle.

L'approccio che suggerisco č quelo di creare un ciclo che verifichi la prima colonna della tua tabella alla ricerca della prima cella che non contiene dati.
Supponendo che il primo dato valido della tua tabella sia in A3 del foglio ENTRATE si potrebbe scrivere una cosa del genere:
codice:
Private Function UltimaRiga() As Long
Dim vTemp As Variant
Dim iRR As Long
    
    ' Calcolo la riga in cui inserire i dati (la prima riga libera)
    iRR = 2     ' riga di inizio
    ' Utilizzo la notazione riga,colonna 
    vTemp = Worksheets("ENTRATE").Cells(iRR, 1).Value
    Do While Not IsEmpty(vTemp)
        iRR = iRR + 1
        vTemp = Worksheets("ENTRATE").Cells(iRR, 1).Value
    Loop
    UltimaRiga = iRR
End Funcrion
Questo codice andrebbe scritto nell'UserForm che hai creato, richiamato dall'evento Click di un bottone, ad esmpio se ai creato un bottone di nome CommandButton1:
codice:
Private Sub CommandButton1_Click()
Dim vTemp As Variant
Dim iRR As Long
    
    ' Calcolo la riga in cui inserire i dati (la prima riga libera)
    iRR = UltimaRiga

    ' posso a questo punto inserire i dati   
    Worksheets("ENTRATE").Cells(iRR, 1).Value = TextBox1.Text   ' Colonna 1 (A)
    Worksheets("ENTRATE").Cells(iRR, 2).Value = TextBox2.Text   ' Colonna 2 (B)

  
    ' dato che non esiste nessun controllo la doppi pressione sul bottone
    ' provoca due inserimenti per evitare chiudo e scarico il Form
    Unload Me
End Sub
Non so se sono stato utile, spero di si.
Ciao.