Note: The other languages of the website are Google-translated. Back to English

Cum să verificați dimensiunea fiecărei foi de lucru a registrului de lucru?

Presupunând că aveți un registru de lucru mare care conține mai multe foi de lucru, iar acum, doriți să aflați dimensiunea fiecărei foi de lucru pentru a determina ce foaie trebuie redusă. Există metode rapide pentru a face față acestei sarcini?

Verificați dimensiunea fiecărei foi de lucru cu codul VBA

Verificați dimensiunea fiecărei foi de lucru cu Kutools pentru Excel

Fila Office Activați editarea și navigarea cu file în Office și faceți munca mult mai ușoară ...
Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%
  • Reutilizați orice: Adăugați cele mai utilizate sau complexe formule, diagrame și orice altceva la preferatele dvs. și reutilizați-le rapid în viitor.
  • Peste 20 de caracteristici text: Extrageți numărul din șirul de text; Extrageți sau eliminați o parte din texte; Conversia numerelor și valutelor în cuvinte în limba engleză.
  • Instrumente de îmbinare: Mai multe cărți de lucru și foi într-unul; Combinați mai multe celule / rânduri / coloane fără a pierde date; Combinați rândurile duplicate și suma.
  • Instrumente divizate: Împărțiți datele în mai multe foi bazate pe valoare; Un registru de lucru pentru mai multe fișiere Excel, PDF sau CSV; O coloană la mai multe coloane.
  • Lipiți săriți Rânduri ascunse / filtrate; Număr și sumă de Culoarea fundalului; Trimiteți e-mailuri personalizate către mai mulți destinatari în bloc.
  • Super Filtru: Creați scheme avansate de filtrare și aplicați oricăror foi; Sortează pe săptămână, zi, frecvență și multe altele; Filtru prin îndrăznețe, formule, comentarii ...
  • Peste 300 de caracteristici puternice; Funcționează cu Office 2007-2021 și 365; Suporta toate limbile; Implementare ușoară în întreprinderea sau organizația dvs.

săgeată albastru dreapta balon Verificați dimensiunea fiecărei foi de lucru cu codul VBA

Cu următorul cod VBA, puteți obține rapid dimensiunea fiecărei foi de lucru din registrul dvs. de lucru. Vă rugăm să faceți acest lucru:

1. Țineți apăsat butonul ALT + F11 tastele și deschide fișierul Fereastra Microsoft Visual Basic pentru aplicații.

2. Clic Insera > Moduleși lipiți următorul cod în Fereastra modulului.

Cod VBA: verificați dimensiunea fiecărei foi de lucru dintr-un registru de lucru </ p>

Sub WorksheetSizes()
'Update 20140526
Dim xWs As Worksheet
Dim Rng As Range
Dim xOutWs As Worksheet
Dim xOutFile As String
Dim xOutName As String
xOutName = "KutoolsforExcel"
xOutFile = ThisWorkbook.Path & "\TempWb.xls"
On Error Resume Next
Application.DisplayAlerts = False
Err = 0
Set xOutWs = Application.Worksheets(xOutName)
If Err = 0 Then
    xOutWs.Delete
    Err = 0
End If
With Application.ActiveWorkbook.Worksheets.Add(Before:=Application.Worksheets(1))
    .Name = xOutName
    .Range("A1").Resize(1, 2).Value = Array("Worksheet Name", "Size")
End With
Set xOutWs = Application.Worksheets(xOutName)
Application.ScreenUpdating = False
xIndex = 1
For Each xWs In Application.ActiveWorkbook.Worksheets
    If xWs.Name <> xOutName Then
        xWs.Copy
        Application.ActiveWorkbook.SaveAs xOutFile
        Application.ActiveWorkbook.Close SaveChanges:=False
        Set Rng = xOutWs.Range("A1").Offset(xIndex, 0)
        Rng.Resize(1, 2).Value = Array(xWs.Name, VBA.FileLen(xOutFile))
        Kill xOutFile
        xIndex = xIndex + 1
    End If
Next
Application.ScreenUpdating = True
Application.Application.DisplayAlerts = True
End Sub

3. Apoi apăsați F5 cheie pentru a executa acest cod și o nouă foaie de lucru numită KutoolsforExcel va fi inserat în registrul de lucru curent care conține numele fișei de lucru și dimensiunea fișierului, iar unitatea este Bit. Vedeți captura de ecran:

doc-check-sheet-size1


săgeată albastru dreapta balon Verificați dimensiunea fiecărei foi de lucru cu Kutools pentru Excel

Dacă aveţi Kutools pentru Excel, Cu său Carnet de lucru divizat utilitar, puteți împărți întregul registru de lucru în fișiere separate, apoi mergeți la folderul specific pentru a verifica dimensiunea fiecărui fișier.

Kutools pentru Excel include mai mult de 300 de instrumente Excel la îndemână. Încercare gratuită fără limitări în 30 de zile. Ia-l acum.

După instalarea Kutools pentru Excel, efectuați următorii pași:

1. Deschideți registrul de lucru pe care doriți să verificați dimensiunea fiecărei foi de lucru și faceți clic pe Afacere > Instrumente de registru de lucru > Carnet de lucru divizat, vezi captura de ecran:

doc-check-sheet-size1

2. În Carnet de lucru divizat , verificați toate foile de lucru și faceți clic pe Despică , apoi specificați un folder pentru a pune noile fișiere din registrul de lucru. Vedeți capturi de ecran:

doc-check-sheet-size3
-1
doc-check-sheet-size4

3. Și apoi fiecare foaie de lucru a registrului de lucru curent va fi salvată ca fișier Excel separat, puteți merge la folderul dvs. specific pentru a verifica dimensiunea fiecărui registru de lucru.

doc-check-sheet-size1

Pentru a afla mai multe despre această funcție Split Workbook.


Legate de articole:

Cum se împarte un registru de lucru pentru a separa fișierele Excel în Excel?

Cum se exportă și se salvează foi și foi de lucru ca registru de lucru nou în Excel?


Cele mai bune instrumente de productivitate Office

Kutools pentru Excel vă rezolvă majoritatea problemelor și vă crește productivitatea cu 80%

  • reutilizarea: Introduceți rapid formule complexe, diagrame și orice ai folosit anterior; Criptați celulele cu parola; Creați o listă de corespondență și trimiteți e-mailuri ...
  • Super Formula Bar (editați cu ușurință mai multe linii de text și formulă); Layout de citire (citiți și editați cu ușurință un număr mare de celule); Lipiți la interval filtrat...
  • Merge celule / rânduri / coloane fără a pierde date; Conținut de celule divizate; Combinați rânduri / coloane duplicate... Prevenirea celulelor duplicate; Comparați gamele...
  • Selectați Duplicat sau Unic Rânduri; Selectați Rânduri goale (toate celulele sunt goale); Super Find și Fuzzy Find în multe cărți de lucru; Selectare aleatorie ...
  • Copie exactă Mai multe celule fără modificarea referinței formulelor; Creați automat referințe la foi multiple; Introduceți gloanțe, Casete de selectare și multe altele ...
  • Extrageți textul, Adăugați text, eliminați după poziție, Eliminați spațiul; Creați și imprimați subtotaluri de paginare; Convertiți conținutul dintre celule și comentarii...
  • Super Filtru (salvați și aplicați scheme de filtrare altor foi); Sortare avansată după lună / săptămână / zi, frecvență și multe altele; Filtru special cu bold, italic ...
  • Combinați cărți de lucru și foi de lucru; Merge Tables pe baza coloanelor cheie; Împărțiți datele în mai multe foi; Conversia în loturi xls, xlsx și PDF...
  • Peste 300 de funcții puternice. Suportă Office / Excel 2007-2021 și 365. Acceptă toate limbile. Implementare ușoară în întreprinderea sau organizația dvs. Funcții complete Probă gratuită de 30 de zile. Garanție de returnare a banilor de 60 de zile.
fila kte 201905

Fila Office aduce interfața cu file în Office și vă face munca mult mai ușoară

  • Activați editarea și citirea cu file în Word, Excel, PowerPoint, Publisher, Access, Visio și Project.
  • Deschideți și creați mai multe documente în filele noi ale aceleiași ferestre, mai degrabă decât în ​​ferestrele noi.
  • Vă crește productivitatea cu 50% și reduce sute de clicuri de mouse pentru dvs. în fiecare zi!
fundul officetab
Comentarii (9)
Încă nu există evaluări. Fii primul care evaluează!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Foarte util. Mulțumesc!!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Vă mulțumim că ați oferit fragmentul de cod publicului. Este una dintre cele mai bune rutine pe care le-am găsit. Iată câteva modificări ale acestuia: 1) Adăugați „Dim xIndex as Long” în partea de sus dacă utilizați Opțiunea explicită. 2) Adăugați acest lucru în bucla For pentru a gestiona foile ascunse (în caz contrar, se blochează): xWs.Visible = xlSheetVisible 3) Dacă aveți foi de „diagramă” de pagină completă, trebuie să copiați codul buclei și să repetați prin Aplicație. ActiveWorkbook.Colectia Charts. Dacă faceți acest lucru, schimbați declarația xWs din „Foaie” în „Obiect”. 4) Pentru un indicator de stare ieftin (sau pentru probleme de depanare), adăugați această linie în bucla For: Debug.Print „Calculating Worksheet Sizes, Sheet” & xIndex & " of " & ActiveWorkbook.Worksheets.count - 1 & " - " & xWs.Nume
Acest comentariu a fost redus la minimum de moderatorul de pe site
Hei, Ben, ați putea să repetați întregul șir de text cu articolele #2 și #4 din e-mailul dvs. adăugate? Cunoștințele mele VBA sunt destul de limitate și nu sunt sigur unde să le adaug în bucla For. Caietul meu de lucru are un număr de foi ascunse și continuă să se blocheze în timpul execuției macro. Mulțumesc, Bob
Acest comentariu a fost redus la minimum de moderatorul de pe site
Iată o copie a rutinei cu câteva îmbunătățiri pe care le-am adăugat. A trebuit să-l împart în mai multe postări din cauza limitelor site-ului. Public Sub WorksheetSizes() „Actualizare 20140526” https://www.extendoffice.com/documents/excel/1682-excel-check-size-of-each-sheet.html<br />' ' BS 4/4/2016: Modificat pentru a avea o bară de stare și formata ieșirea. S-a rezolvat pentru foile ascunse care au cauzat prăbușirea. ' S-a adăugat suport pentru foile de diagramă Dim xWs As Object ' Foaia de lucru sau Chart Dim rng As Range Dim xOutWs As Worksheet Dim xOutFile As String Dim xOutName As String Dim xIndex As Long On Error GoTo ErrorHandler Application.Cursor = xlWait xOutName = "Kutools" ThisWorkbook.Path & "\TempWb.xls" La eroare Reluați următoarea aplicație.DisplayAlerts = False Err = 0 Set xOutWs = Application.Worksheets(xOutName) If Err = 0 Then xOutWs.Delete Err = 0 End If With Application.ActiveWorksheets.Work .Add(Before:=Application.Worksheets(1)) .Name = xOutName .Range("A1").Resize(1, 2).Value = Array("Worksheet Name", "Size") End With Set xOutWs = Application.Worksheets(xOutName) Application.ScreenUpdating = False xIndex = 1 Debug.Print ThisWorkbook.Path Pentru fiecare xWs din Application.ActiveWorkbook.Worksheets Dacă xWs.Name xOutName Then Application.StatusBar = „Calculul dimensiunilor foii de lucru, indexul „ & Sheet” de " & ActiveWorkbook.Worksheets.count - 1 & " - " & xWs.Name Debug.Print "Calculul W Orksheet Sizes, Sheet " & xIndex & " of " & ActiveWorkbook.Worksheets.count - 1 & " - " & xWs.Name DoEvents ' includ acest lucru, astfel încât CTRL+Break să poată fi detectat. '--- paste break ---
Acest comentariu a fost redus la minimum de moderatorul de pe site
' Partea 2 din 3 '--- paste break --- xWs.Visible = xlSheetVisible ' xOutFile = ThisWorkbook.Path & "\" & xWs.Name & ".xls" xWs.CopyQ Application.ActiveWorkbook.SaveAs xOutFile Application.ActiveWorkbook .Close SaveChanges:=False Set rng = xOutWs.Range("A1").Offset(xIndex, 0) rng.Resize(1, 2).Value = Array(xWs.Name, VBA.FileLen(xOutFile)) Kill xOutFile xIndex = xIndex + 1 End If Next ' Repetați cele de mai sus pentru foile de diagramă. Pentru fiecare xWs din Application.ActiveWorkbook.Charts Dacă xWs.Name xOutName Apoi Application.StatusBar = "Calculul dimensiunilor foii de lucru, Sheet" & xIndex & " of " & ActiveWorkbook.Worksheets.count - 1 & " - " & xWs.Name Debug. Print „Calculul dimensiunilor foii de lucru, Sheet” & xIndex & „ of „ & ActiveWorkbook.Worksheets.count - 1 & " - " & xWs.Name DoEvents ' includ acest lucru, astfel încât CTRL+Break să poată fi detectat. xWs.Visible = xlSheetVisible xOutFile = ThisWorkbook.Path & "\" & xWs.Name & ".xls" xWs.Copy Application.ActiveWorkbook.SaveAs xOutFile Application.ActiveWorkbook.Close SaveChanges:=False Set rng. = xRange. ").Offset(xIndex, 1) rng.Resize(0, 1).Value = Array(xWs.Name, VBA.FileLen(xOutFile)) 'Kill xOutFile xIndex = xIndex + 2 End If Next '--- paste break ---
Acest comentariu a fost redus la minimum de moderatorul de pe site
' Partea 3 din 3 '--- paste break --- ' Formatați foaia de ieșire Application.Sheets(xOutName).Activate Columns("B:B").Select Selection.NumberFormat = "#,##0_);( #,##0)" Columns("A:B").Select Columns("A:B").EntireColumn.AutoFit Range("A1").Selectați „Și mai bine, formatați-l ca tabel. ActiveSheet.ListObjects.Add(xlSrcRange, Range("A1:B" & xIndex), , xlYes).Name = "WorksheetSizes" Application.ScreenUpdating = True Application.Application.DisplayAlerts = True Application.StatusBar = "" Application.Cursor = xlDefault Exit Sub ErrorHandler: MsgBox "Error #" & Err.Number & " - " & Err.Description & vbCrLf & "in procedure WorksheetSizes" End Sub
Acest comentariu a fost redus la minimum de moderatorul de pe site
Foarte Foarte Foarte Foarte Foarte util.
Multumesc!!
Acest comentariu a fost redus la minimum de moderatorul de pe site
Multumesc, de mare ajutor,
Am avut o grămadă de formule inutile într-o foaie și tocmai am șters că fișierul funcționează acum bine.
Toate acestea se întâmplă doar pentru că am putut găsi dimensiunea fiecărei foi,
Multumesc din nou.

Anson
Acest comentariu a fost redus la minimum de moderatorul de pe site
Probabil ar trebui să adăugați acest lucru între rândurile 9 și 10 în cazul în care unele foi sunt ascunse pentru a evita prăbușirea codului
Pentru fiecare xWs din foi: xWs.Visible = True: Next
Nu există comentarii postate aici încă
Lăsa comentarii
Postare ca invitat
×
Evaluează această postare:
0   Caractere
Locații sugerate

Urmărește-ne

Copyright © 2009 - www.extendoffice.com. | Toate drepturile rezervate. Cu sprijinul ExtendOffice. | Harta site-ului
Microsoft și sigla Office sunt mărci comerciale sau mărci comerciale înregistrate ale Microsoft Corporation în Statele Unite și / sau în alte țări.
Protejat de Sectigo SSL