suddivisione tabella



  • suddivisione tabella
    di claud (utente non iscritto) data: 10/10/2014 14:32:02

    Buongiorno, ho bisogno di un aiuto in quanto mastico pochino di excel e non ho trovato nei post precedenti una soluzione:
    Ho una tabella contenente 1800 righe per 90 colonne e avrei bisogno che tale range venisse colorato in modo alternativo ( in due colori va benissimo ) ogni 18 righe e che all'incremento di una successiva riga la prima venisse cancellata in modo da mantenere sempre il numero a 1800.
    Qualcuno mi potrebbe dar una mano?
    GRAZIE



  • di Luca73 data: 10/10/2014 15:06:37

    Ciao
    per la colorazine a blocchi di riche potresti usare una formattazione condizionale che faccia riferimento al numero di colonna.
    Si potrebbe usare una formula (all'interno delle formattazione condizionale) del tipo
    =RESTO(RIF.RIGA(A1);36)<18
    Per l'elimonazione della riga bisogna sicuramente scrivere una macro.
    Se ho capito bene vuoi che scrivendo la 1801esima riga venfga cancellata la prima. Corretto?






  • di claud (utente non iscritto) data: 10/10/2014 17:39:52

    Si proprio come hai scritto con la 1801 viene eliminata la prima..cosicchè rimangono sempre 1800.
    GRAZIE



  • di Luca73 data: 13/10/2014 08:44:19

    Ciao
    Secondo me il codice qui sotto può risolvere il tuo problema.
    Ho preoseguito con l'idea di colorare le celle con una formattazione condizionale pertanto dopo ave eleminato la riga 1 ho copiato nella riga 1800 (quella nuova spostata in alto di uno) la formattazione della riga 1799 in modo da mantenere la stessa formattazione.

    Fammi sapere se OK
    Ciao
    Luca
     
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Procedo
    
    If Target.Row = 1801 Then
        Procedo = MsgBox("Cancello La riga numero 1", vbExclamation + vbSystemModal + vbYesNo, "PROCEDO?")
        If Procedo = vbYes Then
            Rows("1:1").Delete Shift:=xlUp
            Rows("1799:1799").Copy
            Rows("1800:1800").PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
            SkipBlanks:=False, Transpose:=False
            Application.CutCopyMode = False
        End If
            
    End If
    
    End Sub
    






  • di claud (utente non iscritto) data: 13/10/2014 20:52:34

    ehm..il problema sta che non so come inserire la macro



  • di Luca73 data: 14/10/2014 08:24:37

    Ciao
    Apri il tuo File
    Vai sulla Scheda "Sviluppo"
    Clicca su Tasto/Icona "Visualizza codice"
    A sinistra dovresti avere una lista dei file aperti con i relativi fogli. Clicca sul Foglio in Questione (quello in cui vuoi inserire la macro.
    A destra in alto ci sono due caselle a discesa in quella a sinistra apri e seleziona worksheet
    in quello a destra Change
    A questo punto ti dovrebbe comparire già l'intestazione e la la fine della macro.Incolla il contenuto e poi salva il file come xslm
    Ciao
    LT