Если вы немного используете Excel, вы знаете, что можете получить довольно большие книги от коллег. Часто бывает желательно разбить книгу на части, чтобы каждый лист находился в отдельной книге. Хотя это можно сделать вручную, этот процесс быстро становится утомительным, если вам нужно сделать много поломок.

Такая повторяющаяся работа естественна для макроса. Следующий макрос, называемый BreakItUp, создает отдельные файлы книги на основе листов в текущей книге. Таким образом, если текущая книга содержит 25 листов, запуск этого макроса приводит к созданию 25 отдельных файлов книги Excel. У каждой книги есть один лист, и имя книги такое же, как у рабочего листа.

Sub BreakItUp()

Dim sht As Worksheet     Dim NFName As String     Const WBPath = "C:\"



For Each sht In ActiveWorkbook.Worksheets         sht.Copy         NFName = WBPath & sht.Name & ".xls"

ActiveWorkbook.SaveAs FileName:=NFName, _             FileFormat:=xlNormal, CreateBackup:=False         ActiveWindow.Close     Next End Sub

Макрос BreakItUp сохраняет новые книги в корневом каталоге на диске C :. Если вы хотите, чтобы ваши книги сохранялись в другом месте, вы можете просто изменить строку, в которой создается константа WBPath.

Вы также должны знать, что сбой этого макроса относительно легко. Например, если вы используете символ в имени рабочего листа, который не является «допустимым»

для имени файла макрос грубо останавливается, когда пытается создать файл. Конечно, вы можете легко внести изменения в макрос, чтобы проверить и заменить такие недопустимые символы.

Другая потенциальная ошибка макроса заключается в том, что он перестанет работать, если уже существует файл с таким же именем, как у рабочего листа. Например, предположим, что у вас есть рабочий лист MySheet1. Если на диске уже есть файл с именем MySheet1.xls, макрос остановится при попытке перезаписать файл. Вы можете обойти это, убедившись, что нет конфликтов имен файлов в каталоге, в котором сохраняются книги.

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (2230) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и новее) здесь:

link: / excelribbon-Creating_Individual_Workbooks [Создание индивидуальных рабочих книг].