Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

file excell troppo grande

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

file excell troppo grande

Postdi criscolo67 » 31/01/13 12:05

Salve a tutti, da un pò di tempo uso in ufficio un programmino "presenze" creato molto con il vostro aiuto all'interno vi sono numerosissimi fogli e formule varie con anche tante macro. Quersto File di excell ogni mese mediante una macro "cancella dati" svuota in ogni foglio i dati inseriti relativi al mese precedente, rendendolo pronto per l'inserimento dei nuovi dati relativi al mese in corso. Inizialmente il file (senza alcun dato inserito) quindi vergine era grande circa 8 mb, ora a distanza di alcuni mesi mi trovo lo stesso file sempre vuoto (svuotato tramite macro) e quindi identico al file vergine di 17 mb come è possibile? come posso riportarlo alle dimensioni iniziali, non vorrei che con il passare del tempo diventi troppo grande e quindi instabile. grazie
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Sponsor
 

Re: file excell troppo grande

Postdi CANAPONE » 31/01/13 12:17

Ciao,

tentativo: prova a vedere se i tasti control+fine ti sparano il cursore in zone del file Excel lontane dai dati che stai eleborando.

Nel caso elimina tutte le righe e le colonne vuote e salva il file: il cursore dovrebbe firnirti ora sull'ultimo dato "valido" in basso a destra.

Spero sia d'aiuto
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: file excell troppo grande

Postdi criscolo67 » 31/01/13 13:01

ciao, ho già provato ad elimuinare sia le righe che le colonne non utilizzate di tutti i fogli ma la dimensione del file non cambia. grazie lo stesso
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: file excell troppo grande

Postdi CANAPONE » 31/01/13 13:29

Ciao,

sono sicuro che l'hai fatto, però la dimensione si riduce dopo che hai salvato il file. Mi succede spesso quando nei file dove uso macro e soprattutto tabelle pivot a dimensione variabile.

Se servisse, giro un articolo su cosa quale potrebbero essere4 le cause

http://www.ozgrid.com/Excel/ExcelProblems.htm

Saluti
---------------
Excel 2004 su Mac
Excel 2010 su Windows 8
CANAPONE
Utente Senior
 
Post: 425
Iscritto il: 22/11/10 15:43
Località: Firenze

Re: file excell troppo grande

Postdi Anthony47 » 31/01/13 14:29

Guarda il messaggio di canapone, sopra.
Che versione di Excel usi, e in quali versioni il file e' usato? E' un file condiviso (su rete)?
Pero' 8 MB per un file "vuoto" mi sembra gia' esagerato...
Hai la possibilita' di pubblicare una copia della versione vuota? Se proprio vuoi proteggere la proprieta' del lavoro penso che basti eliminare un paio di macro fondamentali; quando a eventuali nominativi, fai qualche di Trova e Sostituisci trasformando un po' di sillabe in altre e un po' di lettere in altre (soprattutto da fare con le lettere piu' usate quali n, l, t, r, c, s)

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: file excell troppo grande

Postdi scossa » 31/01/13 21:28

Qualche anno fa ho rielaborato (non ricordo la fonte da cui ho tratto spunto) questa sub per "ripulire" i file excel troppo "ingrassati":

Codice: Seleziona tutto
Public Sub Dimagrire(Optional sWbName As Variant)
   
    Dim wb As Workbook
    Dim sh As Worksheet
    Dim rng As Range
    Dim iRow As Long
    Dim iCol As Long
    Dim blOK As Boolean
    Dim bScreenUpd As Boolean
    Dim bCalc As XlCalculation

    On Error GoTo SubFail_
    With Application
        bScreenUpd = .ScreenUpdating
        .EnableEvents = False
        .ScreenUpdating = False
        bCalc = .Calculation
        .Calculation = xlCalculationManual
    End With
    For Each wb In Workbooks
        If IsMissing(sWbName) Then
            blOK = True
        Else
            blOK = wb.Name = sWbName
        End If

        If blOK Then
            For Each sh In wb.Worksheets
                With sh
                    .DisplayPageBreaks = False
                    iRow = 0
                    iCol = 0
                    On Error Resume Next
                    iRow = LastRow(sh, .Cells)
                    iCol = LastCol(sh, .Cells)
                    On Error GoTo SubFail_

                    If iRow * iCol = 0 Then
                        .Columns.Delete
                    Else
                        If Not iRow = .Rows.Count Then
                            .Range(.Cells(iRow + 1, 1), _
                                   .Cells(.Rows.Count, 1)). _
                                   EntireRow.Delete
                        End If
                        If Not iCol = .Columns.Count Then
                            .Range(.Cells(1, iCol + 1), _
                                   .Cells(1, .Columns.Count)). _
                                   EntireColumn.Delete
                        End If
                    End If
                    Set rng = .UsedRange
                End With
            Next sh
        End If
    Next wb
SubFail_:
    With Application
        .EnableEvents = True
        .ScreenUpdating = bScreenUpd
        .Calculation = bCalc
    End With
End Sub


Mettila nel file personal, poi apri il tuo grosso-grasso file excel e lancia la macro; quindi salva il file e verifica le dimensioni.
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 424
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: file excell troppo grande

Postdi criscolo67 » 01/02/13 19:26

Grazie a tutti per l'interessamento per Antony la versione che uso e la 2010 ma è stato creato inizialmente con qualche versione precedente, con l'avvento in ufficio di nuove macchine abbiamo dovuto adattarlo con la compatibilità. allego copia del file e ripeto che quando è stato messo a punto (man mano con varie macro aggiuntive) il file era 8 mb ora a furia di salvare con nome e cancellare i dati siamo a 25 mb. Per scossa cosa intendi mettila nel file personal e poi apri ecc ecc. scusa l'ignoranza . ciao http://rapidshare.com/files/2466495146/PROVA.xls
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: file excell troppo grande

Postdi criscolo67 » 01/02/13 19:28

Scusate ho sbagliato 15 mb non 25. saluti
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: file excell troppo grande

Postdi Anthony47 » 01/02/13 19:43

Purtroppo il link risulta inutilizzabile (Download permission denied by uploader); prova con www.filedropper.com.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: file excell troppo grande

Postdi criscolo67 » 01/02/13 20:26

Speriamo bene Antony, comunque ti anticipo sul tuo commento dopo che lo aprirai, sicuramente dirai quanti fogli, quante macro, quante formule ecc. è vero ma tutto funziona alla perfezione solo che sta crescendo mensilmente in dimensioni ciao http://www.filedropper.com/prova_3
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: file excell troppo grande

Postdi scossa » 01/02/13 22:00

criscolo67 ha scritto:Per scossa cosa intendi mettila nel file personal e poi apri ecc ecc. scusa l'ignoranza . ciao
http://rapidshare.com/files/2466495146/PROVA.xls


Ho provato la mia macro sul tuo file e si passa da 14.870 KB a 8.683 KB.

ATTENZIONE: per sicurezza lavora su una copia e, prima di eseguire la macro valorizza la cella S735 (scrivici qualcosa) del foglio dati.

Riguardo il file personal.xls fai una ricerca su google.
Bye!
scossa

Se tu hai una mela, e io ho una mela, e ce le scambiamo, allora tu ed io abbiamo sempre una mela per uno. Ma se tu hai un'idea, ed io ho un'idea, e ce le scambiamo, allora abbiamo entrambi due idee. (George Bernard Shaw)
Avatar utente
scossa
Utente Senior
 
Post: 424
Iscritto il: 01/04/12 16:40
Località: Provincia di Verona

Re: file excell troppo grande

Postdi criscolo67 » 01/02/13 23:10

allora, il file personal l'ho trovato...ho aperto il file personal, poi aperto il mio grosso-grasso file excel, la macro dimagrire l'ho creata nel file personal (giusto??) e come la lancio mi da questo errore...
Immagine
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: file excell troppo grande

Postdi Anthony47 » 02/02/13 01:47

Se salvi il file, per prova, "come pagina web" sara' creata una directory col nome del file contenente a sua volta tutti i vari Fogli (piu' altri file di servizio); vedrai che uno di questi e' palesemente corrotto, con una dimensione dell' ordine di 20 MByte.
La buona notizia e' quella che ti ha gia' dato scossa: che la macro da lui fornita, completata con le due "Function" mancanti, riporta la dimensione agli 8 MB iniziali.
Il codice mancante e' il seguente:
Codice: Seleziona tutto
Function LastRow(SH As Worksheet, _
                 Optional Rng As Range)
    If Rng Is Nothing Then
        Set Rng = SH.Cells
    End If

    On Error Resume Next
    LastRow = Rng.Find(What:="*", _
                       After:=Rng.Cells(1), _
                       Lookat:=xlPart, _
                       LookIn:=xlFormulas, _
                       SearchOrder:=xlByRows, _
                       SearchDirection:=xlPrevious, _
                       MatchCase:=False).Row
    On Error GoTo 0
End Function
'--------------->
Function LastCol(SH As Worksheet, _
                 Optional Rng As Range)
    If Rng Is Nothing Then
        Set Rng = SH.Cells
    End If

    On Error Resume Next
    LastCol = Rng.Find(What:="*", _
                       After:=Rng.Cells(1), _
                       Lookat:=xlPart, _
                       LookIn:=xlFormulas, _
                       SearchOrder:=xlByColumns, _
                       SearchDirection:=xlPrevious, _
                       MatchCase:=False).Column
    On Error GoTo 0
End Function
(va aggiunto in coda alla macro precedente).

Credo che l' uso di uno stesso file su macchine 2007, 2010 e 2003 sia abbastanza pericoloso in quanto a facilita' di corruzione, quindi periodicamente fai un backup e altrettanto peridicamente lancia la Sub Dimagrire.
Quanto al timore per il mio giudizio, a) probabilmente hai una sovrastima delle mie abilita', e b) io in genere dico "se funziona e' ottimo così"

Ciao a tutti!
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13904
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "file excell troppo grande":


Chi c’è in linea

Visitano il forum: Nessuno e 5 ospiti