Excel Forum Per condividere esperienze su Microsoft Excel

problema con userform

  • Messaggi
  • OFFLINE
    aquila-67
    Post: 35
    Registrato il: 19/01/2017
    Città: MILANO
    Età: 57
    Utente Junior
    2010
    00 21/02/2017 16:24
    Buonasera, apro una nuova discussione sempre su questa cartella di lavoro perche ho un problema completamente diverso dal precedente, preciso che le macro fanno il loro dovere e funzionano, adesso per inserire dati in tabella in modo piu veloce ho creato una userform per immettere i dati piu frequenti in modo da velocizzare l'operazione, ho preso un po di codice qua e la, l'ho adattato e pare funziona pure se non per il fatto che scrive e sovrascrive sempre sulla stessa riga. Nota, le colonne verdi che si notano sul file di esempio allegato contengono formule, se io le cancello funziona perfettamente, sono giorni che ci provo ma le mie conoscenze non vanno oltre...
  • OFFLINE
    by sal
    Post: 5.068
    Registrato il: 14/11/2004
    Utente Master
    Office 2019
    00 21/02/2017 16:40
    RowsCount
    Ciao scrive sempre sulla stessa riga perche non incrementi l'ultima riga.

    questo codice nell'userform

    RowCount = Worksheets("inserimento").Range("b1").CurrentRegion.Rows.Count
    

    diventa

    RowCount = Worksheets("inserimento").Range("b1").CurrentRegion.Rows.Count + 1


    se è solo questo!

    Ciao By Sal [SM=x423051]
    se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
  • OFFLINE
    aquila-67
    Post: 35
    Registrato il: 19/01/2017
    Città: MILANO
    Età: 57
    Utente Junior
    2010
    00 21/02/2017 16:53
    ho provato, in questo modo scrive e sovrascrive sempre sulla seconda riga invece della prima. Io il problema penso di averlo individuato e sta nel fatto che le colonne in verde sono piene di formule, tanto è vero che se le cancello funziona, non so come si possa risolvere. Se io cambio le coordinate si mette a scrivere in fondo al foglio fuori dalla tabella correttamente un riga dopo l'altra.
  • OFFLINE
    tanimon
    Post: 1.023
    Registrato il: 27/06/2011
    Utente Veteran
    excel 2007
    00 21/02/2017 19:41

    prima pulisci il range ineressato sotto la riga 16,
    che hai "sporcato" con le tue prove,

    riga 412 e riga 415,

    poi modifica il tuo codice come sotto riportato.
    Ciao
    Frank

    ' Scrive i dati inseriti sul modulo
    ActiveSheet.Unprotect
    
    lr = Cells(Rows.Count, "B").End(xlUp).Row + 1
    With Worksheets("inserimento").Cells(lr, 2)
    .Offset(, 0).Value = Me.TextBox1.Value
    .Offset(, 1).Value = Me.TextBox2.Value
    .Offset(, 2).Value = DateValue(Me.TextBox3.Value)
    .Offset(, 3).Value = Me.ComboBox1.Value
    .Offset(, 8).Value = Me.TextBox4.Value
    .Offset(, 9).Value = Me.ComboBox2.Value
    If Me.CheckBox1.Value = True Then
    .Offset(, 11).Value = "F"
    Else
    .Offset(, 11).Value = "M"
    End If
    End With
    [Modificato da tanimon 21/02/2017 20:31]







    Stretta la foglia, larga la via, dite la vostra che ho detto la mia.
    Excel 2007 forse anche 2013 ... 2021 ... 365 e future...
  • OFFLINE
    aquila-67
    Post: 36
    Registrato il: 19/01/2017
    Città: MILANO
    Età: 57
    Utente Junior
    2010
    00 21/02/2017 23:12
    finalmente, ora funziona, erano giorni che provavo questa userform, alle righe 412 e 415 come ci è arrivato non lo so sicuramente durante le prove. grazie. [SM=x423028]