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

Как проверить размер каждого рабочего листа книги?

Предположим, у вас есть большая книга, содержащая несколько листов, и теперь вы хотите узнать размер каждого листа, чтобы определить, какой лист нужно уменьшить. Есть ли какие-нибудь быстрые способы справиться с этой задачей?

Проверьте размер каждого рабочего листа с помощью кода VBA

Проверьте размер каждого рабочего листа с помощью Kutools for Excel

Вкладка Office позволяет редактировать и просматривать в Office с вкладками и значительно упрощает работу ...
Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%
  • Повторное использование чего угодно: Добавляйте наиболее часто используемые или сложные формулы, диаграммы и все остальное в избранное и быстро используйте их в будущем.
  • Более 20 текстовых функций: Извлечь число из текстовой строки; Извлечь или удалить часть текстов; Преобразование чисел и валют в английские слова.
  • Инструменты слияния: Несколько книг и листов в одну; Объединить несколько ячеек / строк / столбцов без потери данных; Объедините повторяющиеся строки и сумму.
  • Разделить инструменты: Разделение данных на несколько листов в зависимости от ценности; Из одной книги в несколько файлов Excel, PDF или CSV; От одного столбца к нескольким столбцам.
  • Вставить пропуск Скрытые / отфильтрованные строки; Подсчет и сумма по цвету фона; Отправляйте персонализированные электронные письма нескольким получателям массово.
  • Суперфильтр: Создавайте расширенные схемы фильтров и применяйте их к любым листам; Сортировать по неделям, дням, периодичности и др .; Фильтр жирным шрифтом, формулы, комментарий ...
  • Более 300 мощных функций; Работает с Office 2007-2021 и 365; Поддерживает все языки; Простое развертывание на вашем предприятии или в организации.

стрелка синий правый пузырь Проверьте размер каждого рабочего листа с помощью кода VBA

С помощью следующего кода VBA вы можете быстро получить размер каждого рабочего листа в своей книге. Пожалуйста, сделайте так:

1. Удерживайте ALT + F11 ключи, и он открывает Окно Microsoft Visual Basic для приложений.

2. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.

Код VBA: проверьте размер каждого листа в книге </ 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. Затем нажмите F5 ключ для выполнения этого кода и новый рабочий лист с именем KutoolsforExcel будет вставлен в текущую книгу, которая содержит имя каждого рабочего листа и размер файла, а единицей измерения является бит. Смотрите скриншот:

документ-чек-лист-размер1


стрелка синий правый пузырь Проверьте размер каждого рабочего листа с помощью Kutools for Excel

Если у вас есть Kutools for Excel, С его Разделить книгу утилиту, вы можете разделить всю книгу на отдельные файлы, а затем перейти в конкретную папку, чтобы проверить размер каждого файла.

Kutools for Excel включает более 300 удобных инструментов Excel. Бесплатная пробная версия без ограничений в течение 30 дней. Получить сейчас.

После установки Kutools for Excel выполните следующие действия:

1. Откройте книгу, в которой вы хотите проверить размер каждого листа, и нажмите Предприятие > Рабочие инструменты > Разделить книгу, см. снимок экрана:

документ-чек-лист-размер1

2. В Разделить книгу диалоговое окно, проверьте все рабочие листы и нажмите Трещина кнопку, а затем укажите папку для размещения файлов новой книги. Смотрите скриншоты:

документ-чек-лист-размер3
-1
документ-чек-лист-размер4

3. И затем каждый рабочий лист вашей текущей книги будет сохранен как отдельный файл Excel, вы можете перейти в свою конкретную папку, чтобы проверить размер каждой книги.

документ-чек-лист-размер1

Чтобы узнать больше об этой функции разделенной книги.


Статьи по теме:

Как разделить книгу на отдельные файлы Excel в Excel?

Как экспортировать и сохранять листы и рабочие листы как новую книгу в Excel?


Лучшие инструменты для работы в офисе

Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма ...
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы... Предотвращение дублирования ячеек; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии...
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом ...
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
вкладка kte 201905

Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
офисный дно
Сортировать комментарии по
Комментарии (9)
Оценок пока нет. Оцените первым!
Этот комментарий был сведен к минимуму модератором на сайте
Очень полезно. Спасибо!!
Этот комментарий был сведен к минимуму модератором на сайте
Спасибо за предоставление фрагмента кода для общественности. Это одна из лучших процедур, которые я нашел. Вот несколько настроек: 1) Добавьте «Dim xIndex as Long» вверху, если вы используете Option Explicit. 2) Добавьте это в цикл For для обработки скрытых листов (иначе произойдет сбой): xWs.Visible = xlSheetVisible 3) Если у вас есть листы "диаграммы" на всю страницу, вам нужно скопировать код для цикла и выполнить итерацию по приложению. Коллекция ActiveWorkbook.Charts. Если вы сделаете это, измените объявление xWs с «Лист» на «Объект». 4) Для дешевого индикатора состояния (или для отладки проблем) добавьте эту строку в цикл For: Debug.Print «Расчет размеров рабочего листа, лист» и xIndex & «из» и ActiveWorkbook.Worksheets.count - 1 & «-» & xWs.Name
Этот комментарий был сведен к минимуму модератором на сайте
Эй, Бен, не могли бы вы перевставить всю строку текста с добавленными элементами № 2 и № 4 из вашего электронного письма? МОИ знания VBA довольно ограничены, и я не уверен, где именно добавить их в цикл For. В моей книге есть несколько скрытых листов, и во время выполнения макроса происходит сбой. Спасибо, Боб
Этот комментарий был сведен к минимуму модератором на сайте
Вот копия процедуры с некоторыми улучшениями, которые я добавил. Пришлось разбить на несколько постов из-за ограничений сайта. Public Sub WorksheetSizes () «Обновление 20140526» https://www.extendoffice.com/documents/excel/1682-excel-check-size-of-each-sheet.html<br />' ' BS 4/4/2016: Изменено, чтобы иметь строку состояния и форматировать вывод. ' Исправлено для скрытых листов, которые приводили к сбою. ' Добавлена ​​поддержка листов диаграмм Dim xWs As Object ' Worksheet или 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 = "KutoolsforExcel" xOutFile = ThisWorkbook.Path & "\TempWb.xls" При ошибке Возобновить следующее Application.DisplayAlerts = False Err = 0 Установить 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("Имя листа", "Размер") End With Set xOutWs = Application.Worksheets(xOutName) Application.ScreenUpdating = False xIndex = 1 Debug.Print ThisWorkbook.Path Для каждого xWs В Application.ActiveWorkbook.Worksheets Если xWs.Name xOutName Then Application.StatusBar = "Расчет размеров листа, лист " & xIndex & " of " & ActiveWorkbook.Worksheets.count - 1 & " - " & xWs.Name Debug.Print "Вычисление W Orksheet Sizes, Sheet " & xIndex & " of " & ActiveWorkbook.Worksheets.count - 1 & " - " & xWs.Name DoEvents ' включают это, чтобы можно было обнаружить CTRL+Break. '--- вставить разрыв ---
Этот комментарий был сведен к минимуму модератором на сайте
'Часть 2 из 3' --- вставить разрыв --- 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 ' Повторить вышеуказанное для листов диаграмм. Для каждого xWs В Application.ActiveWorkbook.Charts Если xWs.Name xOutName Тогда Application.StatusBar = "Расчет размеров рабочего листа, листа" & xIndex & " of " & ActiveWorkbook.Worksheets.count - 1 & " - " & xWs.Name Debug. Распечатайте «Расчет размеров рабочего листа, лист» & xIndex & «из» & ActiveWorkbook.Worksheets.count - 1 & «-» & xWs.Name DoEvents ' включите это, чтобы можно было обнаружить CTRL+Break. xWs.Visible = xlSheetVisible xOutFile = ThisWorkbook.Path & "\" & xWs.Name & ".xls" 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 '--- вставить разрыв ---
Этот комментарий был сведен к минимуму модератором на сайте
' Часть 3 из 3 '--- вставка разрыва --- ' Формат выходного листа Application.Sheets(xOutName).Activate Columns("B:B").Select Selection.NumberFormat = "#,##0_);( #,##0)" Columns("A:B"). Выберите Columns("A:B").EntireColumn.AutoFit Range("A1"). Выберите ' Еще лучше, отформатируйте его как таблицу. 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 & "в процедуре WorksheetSizes" End Sub
Этот комментарий был сведен к минимуму модератором на сайте
Очень очень очень очень очень полезно.
Спасибо!!
Этот комментарий был сведен к минимуму модератором на сайте
Спасибо, очень полезно,
У меня была куча ненужных формул на листе, и я просто удалил, что файл теперь работает нормально.
Все это происходит только потому, что я могу найти размер каждого листа,
Еще раз спасибо.

Энсон
Этот комментарий был сведен к минимуму модератором на сайте
Вероятно, следует добавить это между строками 9 и 10 на случай, если некоторые листы скрыты, чтобы избежать сбоя кода.
Для каждого xWs в листах: xWs.Visible = True: Next
Здесь еще нет комментариев
Оставляйте свои комментарии
Публикация как гость
×
Оценить этот пост:
0   Характеристики
Предлагаемые места

Подписывайтесь на Нас

Copyright © 2009 - www.extendoffice.ком. | Все права защищены. Питаться от ExtendOffice, | Карта сайта
Microsoft и логотип Office являются товарными знаками или зарегистрированными товарными знаками Microsoft Corporation в США и / или других странах.
Защищено Sectigo SSL