At finde størrelsen af ​​de enkelte regneark

08/31/2011 by admin

Maarten spørger, om der er en måde at finde ud af størrelsen af ​​hvert regneark i en projektmappe. Han har en projektmappe med næsten 100 regneark og han ønsker at reducere størrelsen på filen projektmappen. Men han ved ikke, hvilke regneark er de største i størrelse.

Finde ud af "størrelse" af de enkelte arbejdsark afhænger for en stor del, om hvad der menes med "størrelse". Betyder det, at antallet af celler, der anvendes? De kolonner og rækker brugt? Hvor meget tekst er gemt i regnearket? Listen over målinger kunne blive ved og ved.

Problemet er, at spørgsmål som disse glip af mærket; et regneark kan have mange, mange ting, der er gemt på den. For eksempel kan den indeholde kommentarer, formler, tekst, diagrammer, lydfiler og en række andre elementer. Et diagram kan være større end den anden i forhold til antallet af celler, men den anden kan være større i form af objekter (f.eks diagrammer eller pivottabeller).

Den eneste reelle måde at sammenligne de relative størrelser af regneark er at spare hvert regneark ud i sin egen projektmappe og derefter undersøge størrelsen af ​​hver resulterende projektmappe. Det betyder naturligvis ikke svare præcist, hvor stor den enkelte regneark er, fordi den handling at gemme en projektmappe indfører ekstra overhead-ind den gemte fil. Men hvis hvert regneark gemmes på samme måde, vil hver en sammenlignelig overhead og kan således i forhold til hinanden for at se, der er større.

Følgende makro tilføjer et regneark til den aktuelle projektmappe for at registrere de størrelser af hver projektmappe oprettet. Derefter trin gennem hvert regneark og gemmer den i et individ projektmappe. Størrelsen af ​​projektmappen bestemmes derefter, registreres, og den nye projektmappe slettet.

Sub WorksheetSizes ()
Dim wks As arbejdsark
Dim C som Range
Dim sFullFile As String
Dim sReport As String
Dim sWBName As String

sReport = "Størrelse Report"
sWBName = "Slet Me.xls"
sFullFile = ThisWorkbook.Path & _
Application.PathSeparator & sWBName

»Tilføj nyt regneark til at registrere størrelser
Ved fejl Resume Next
Set wks = Regneark (sReport)
Hvis wks er intet Derefter
Med ThisWorkbook.Worksheets.Add (Før: = Regneark (1))
.name = SReport
.Range ("A1"). Value = "Arbejdsark Name"
.Range ("B1"). Value = "omtrentlige størrelse"
End med
End hvis
Ved fejl GoTo 0
Med ThisWorkbook.Worksheets (sReport)
.Select
.Range ("A1"). CurrentRegion.Offset (1, 0) .ClearContents
Set c = .Range ("A2")
End med

Application.ScreenUpdating = False
»Loop gennem regneark
For hver wks In ActiveWorkbook.Worksheets
Hvis wks.Name <> sReport Så
wks.Copy
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs sFullFile
ActiveWorkbook.Close SaveChanges: = False
Application.DisplayAlerts = True
c.Offset (0, 0) .Value = wks.Name
c.Offset (0, 1) .Value = FileLen (sFullFile)
Set c = c.Offset (1, 0)
Kill sFullFile
End hvis
Næste wks
Application.ScreenUpdating = True
End Sub

ExcelTips er din kilde til omkostningseffektiv Microsoft Excel træning. Dette tip (11112) gælder for Microsoft Excel 97, 2000, 2002, og 2003. Du kan finde en version af dette tip til båndet grænseflade Excel (Excel 2007 og nyere) her: At finde størrelsen af ​​de enkelte arbejdsark.


Relaterede Artikler

© 2019 - zajacperrone.com| Contact us: webmaster# zajacperrone.com