Excel Forum Per condividere esperienze su Microsoft Excel

Macro per creazione e compilazione tabelle

  • Messaggi
  • OFFLINE
    giuseppe.mazza85
    Post: 1
    Registrato il: 06/12/2017
    Città: MILANO
    Età: 38
    Utente Junior
    2016
    00 06/12/2017 09:07
    Buongiorno a tutti,
    sono nuovo nel forum e faccio i complimenti a tutti gli utenti per i consigli che date.
    Ho un problema:
    ho due sheet,
    nel primo ho nella cella A1 l'inserimento di un valore numerico (che mi indica quante righe devono essere presenti in una tabella che creo sotto e che l'utente dovrà compilare),
    nel secondo sheet devo inserire la tabella compilata, inserendo tutte le righe, dato che nel foglio 2 già sono presenti altre righe compilate sotto.
    Per creare la tabella pensavo di utilizzare un pulsante a cui legare la macro.

    Per creare la tabella con il numero di righe indicato utilizzo questa macro:

    Sub Aggiungi_Righe()
    Dim InizioRow As Long, FineRow As Long, Righe As Long
    Dim InizioCol As Long, FineCol As Long, Numero As Boolean


    Numero = IsNumeric(Range("C2").Value)
    If Range("C2").Value = "" Or Numero = False Then
    MsgBox "Controllare il numero di interventi inseriti", vbCritical, "VALORE NON CORRETTO"
    Exit Sub
    End If


    With ActiveSheet.ListObjects("Tabella1")
    InizioRow = .HeaderRowRange.Row
    InizioCol = .DataBodyRange.Column
    FineRow = InizioRow + .DataBodyRange.Rows.Count
    FineCol = (InizioCol - 1) + .DataBodyRange.Columns.Count
    Righe = Range("C2").Value
    .Resize Range(Cells(InizioRow, InizioCol), Cells(InizioRow + Righe, FineCol))
    End With
    End Sub

    Grazie mille in anticipo
  • OFFLINE
    GiuseppeMN
    Post: 2.592
    Registrato il: 03/04/2013
    Utente Veteran
    Excel 2000 - 2013
    00 06/12/2017 10:46
    Buona giornata, Giuseppe Mazza;
    di primo achito avrei pensato ad una tabelle di inserimento dati "Userform", ma senza un File di riferimento mi è difficile capire se questo potrebbe essere l'approccio più corretto.

    Credo sarebbe utile avere un File d'esempio, senza Dati sensibili, dal quale cominciare a ragionare.



    A disposizione.

    Buon Lavoro e buona serata.

    Giuseppe

    Windows XP - Excel 2000
    Windows 10 - Excel 2013
  • OFFLINE
    giuseppe.mazza85
    Post: 1
    Registrato il: 06/12/2017
    Città: MILANO
    Età: 38
    Utente Junior
    2016
    00 06/12/2017 11:53
    Grazie mille Giuseppe.
    Mi spiego meglio e allego il file di esempio (in formato RAR come richiesto), in modo da poter capire meglio quello che dico.
    Nel primo tab (creazione tabella) inserisco il numero di righe che voglio nella tabella ed attivando la macro (tramite tasto) mi inserisce il numero desiderato nella tabella1 (la macro dovrebbe anche ripulire la tabella se sono presenti valori, ma questo è un prob secondario).
    Una volta creata la tabella, l'utente (io) la compilo e poi la devo inserire nel tab relazione, in corrispondenza del rigo 8. Credo sia conveniente creare un altro tasto, in modo da poter attivare la macro solo dopo aver compilato la tabella. Anche in questo caso, la macro dovrebbe eliminare gli eventuali righi inseriti in un utilizzo precedente ed inserire i nuovi dati.
    Spero di essere stato più chiaro e specialmente comprensibile.
    Grazie mille in anticipo!
  • OFFLINE
    patel45
    Post: 4.041
    Registrato il: 13/03/2012
    Città: LIVORNO
    Età: 78
    Utente Master
    2010
    00 06/12/2017 12:00
    l'allegato non c'è, non puoi inserirlo in modifica, devi fare un altro post

    ----------
    Win 10 - Excel 2010
    allega un file di esempio, guadagnerai tempo tu e lo farai risparmiare a chi ti aiuta
  • OFFLINE
    giuseppe.mazza85
    Post: 2
    Registrato il: 06/12/2017
    Città: MILANO
    Età: 38
    Utente Junior
    2016
    00 07/12/2017 17:56
    Scusa ieri non mi caricava il file nonostante l'avessi zippato. Oggi va, ecco il file. Grazie mille
  • OFFLINE
    GiuseppeMN
    Post: 2.593
    Registrato il: 03/04/2013
    Utente Veteran
    Excel 2000 - 2013
    00 08/12/2017 10:46
    Buona giornata, Giuseppe Mazza;
    purtroppo il Tuo File non mi è stato di grande aiuto.
    D'accordo non inserire Dati sensibili, ma, qualche Record generico andrebbe proposto.

    Inoltre il File era incompleto, mancavano i Fogli di lavoro:
    -    Piano M&V parte 1
    -    Interventi previsti
    senza i quali il Codice VBA:
    -    copia_tabella
    non poteva funzionare.

    Detto ciò, ho pensato potesse utile allegare un File con l'idea che avevo previsto; UserForm che sostituisce il Foglio di lavoro:
    -    tabella

    Magari potrebbe servire da spunto per implementare la tua Procedura.



    Buona serata.

    Giuseppe

    Windows XP - Excel 2000
    Windows 10 - Excel 2013