Если файл сохранён на диске, можно так:
1. Открываете книгу с данными на нужном листе
2. Заходите в VBA (Alt+F11)
3. Выбираете в меню Insert -> Module
4. Вставляете нижеприведённый код
5. Нажимаете F5 (не сохраняете исходный файл)
Option Explicit ' Обязательное объявление переменных
Option Base 1 ' Нижняя граница массива (по умолчанию)
'123456789012345678901234567890123456h8nor@ya567890123456789012345678toster56789
Sub Border_Limit()
Dim Limit As Integer, Count As Integer, SaveDir As String, SetTitle As Boolean
Count = 1: Limit = 1000 ' Счётчик файлов; Количество строк
SetTitle = False ' Если есть заголовок, заменить False на True
SaveDir = ThisWorkbook.Path ' Или вписать полный путь для сохранения "C:"
' Предполагается, что в колонке A нет пустых ячеек
While Not IsEmpty(Cells(IIf(SetTitle, 2, 1), 1))
Rows("1:" & Limit).Copy
Workbooks.Add xlWBATWorksheet ' Создать новую книгу: шаблон с 1 листом
ActiveSheet.Paste: Cells(1, 1).Select
ActiveWorkbook.SaveAs Filename:=SaveDir & "Массив_" & Count & ".xlsx", _
FileFormat:=xlOpenXMLWorkbook
ActiveWindow.Close
Rows(IIf(SetTitle, 2, 1) & ":" & Limit).Delete Shift:=xlUp
Count = Count + 1
Wend: MsgBox "Файл разбит на " & Count - 1 & " файл(ов). "
End Sub
Никакие C++ запускать не надо.
Для пытливых умов: Отказ от Слияния в пользу шаблонов https://toster.ru/q/320942
Сохранение листов книги как отдельных файлов
Про сборку листов из нескольких книг в одну текущую я уже писал здесь. Теперь разберем решение обратной задачи: есть одна книга Excel, которую нужно «разобрать», т.е. сохранить каждый лист как отдельный файл для дальнейшего использования.
Примеров подобного из реальной жизни можно привести массу. Например, файл-отчет с листами-филиалами нужно разделить на отдельные книги по листам, чтобы передать затем данные в каждый филиал и т.д.
Если делать эту процедуру вручную, то придется для каждого листа выполнить немаленькую цепочку действий (выбрать лист, правой кнопкой по ярлычку листа, выбрать Копировать, указать отдельный предварительно созданный пустой файл и т.д.) Гораздо проще использовать короткий макрос, автоматизирующий эти действия.
Способ 1. Простое разделение
Нажмите сочетание Alt+F11 или выберите в меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor), вставьте новый модуль через меню Insert — Module и скопируйте туда текст этого макроса:
Sub SplitSheets1() Dim s As Worksheet For Each s In ActiveWorkbook.Worksheets 'проходим по всем листам в активной книге s.Copy 'копируем каждый лист в новый файл Next End Sub
Если теперь выйти из редактора Visual Basic и вернуться в Excel, а затем запустить наш макрос (Alt+F8), то все листы из текущей книги будут разбиты по отдельным новым созданным книгам.
Способ 2. Разделение с сохранением
При необходимости, можно созданные книги сразу же сохранять под именами листов. Для этого макрос придется немного изменить, добавив команду сохранения в цикл:
Sub SplitSheets2() Dim s As Worksheet Dim wb as Workbook Set wb = ActiveWorkbook For Each s In wb.Worksheets 'проходим во всем листам активной книги s.Copy 'сохраняем лист как новый файл ActiveWorkbook.SaveAs wb.Path & "" & s.Name & ".xlsx" 'сохраняем файл Next End Sub
Этот макрос сохраняет новые книги-листы в ту же папку, где лежал исходный файл. При необходимости сохранения в другое место, замените wb.Path на свой путь в кавычках, например «D:Отчеты2012» и т.п.
Если нужно сохранять файлы не в стандартном формате книги Excel (xlsx), а в других (xls, xlsm, xlsb, txt и т.д.), то кроме очевидного изменения расширения на нужное, потребуется добавить еще и уточнение формата файла — параметр FileFormat:
ActiveWorkbook.SaveAs wb.Path & "" & s.Name & ".xlsb", FileFormat:=50
Для основных типов файлов значения параметра FileFormat следующие:
- XLSX = 51
- XLSM = 52
- XLSB = 50
- XLS = 56
- TXT = 42
Полный список всех вариантов можно посмотреть в справке MSDN.
Способ 3. Сохранение в новые книги только выделенных листов
Если вы хотите раскидать по файлам не все листы в вашей книге, а только некоторые, то макрос придется немного изменить. Выделите нужные вам листы в книге, удерживая на клавиатуре клавишу Ctrl или Shift и запустите приведенный ниже макрос:
Sub SplitSheets3() Dim AW As Window Set AW = ActiveWindow For Each s In AW.SelectedSheets Set TempWindow = AW.NewWindow 'создаем отдельное временное окно s.Copy 'копируем туда лист из выделенного диапазона TempWindow.Close 'закрываем временное окно Next End Sub
Создавать новое окно и копировать через него, а не напрямую, приходится потому, что Excel не умеет копировать группу листов, если среди них есть листы с умными таблицами. Копирование через новое окно позволяет такую проблему обойти.
Способ 4. Сохранение только выделенных листов в новый файл
Во всех описанных выше способах каждый лист сохранялся в свой отдельный файл. Если же вы хотите сохранить в отдельный новый файл сразу группу выделенных предварительно листов, то нам потребуется слегка видоизменить наш макрос:
Sub SplitSheets4() Dim CurW As Window Dim TempW As Window Set CurW = ActiveWindow Set TempW = ActiveWorkbook.NewWindow CurW.SelectedSheets.Copy TempW.Close End Sub
Способ 5. Сохранение листов как отдельных PDF-файлов
Этот способ чем-то похож на второй, но листы сохраняются не как отдельные книги Excel, а в формате PDF, что часто требуется, если никто не должен менять документ и увидеть ваши формулы. Обратите внимание, что:
- для этого используется уже другой метод (ExportAsFixedFormat а не Copy)
- листы выводятся в PDF с параметрами печати, настроенными на вкладке Разметка страницы (Page Layout)
- книга должна быть сохранена на момент экспорта
Нужный нам код будет выглядеть следующим образом:
Sub SplitSheets5() Dim s As Worksheet For Each s In ActiveWorkbook.Worksheets s.ExportAsFixedFormat Filename:=ThisWorkbook.Path & "" & s.Name & ".pdf", Type:=xlTypePDF Next End Sub
Способ 6. Готовый макрос из надстройки PLEX
Если лень или нет времени внедрять все вышеописанное, то можно воспользоваться готовым макросом из моей надстройки PLEX:
Ссылки по теме
- Сборка листов из нескольких книг в одну
- Что такое макросы, куда вставлять код на Visual Basic, как их использовать.
Введение
Предположим, у нас есть рабочий лист с большим количеством данных, и нам нужно разделить данные на отдельные книги Excel на основе столбца «Категория». Решить данную проблему возможно ручным способом, применяя инструмент фильтрации данных. Однако повторное копирование данных потребует терпения.
Как быстро разделить таблицу Excel на отдельные книги макросом. Пошаговый алгоритм
- Сочетанием клавиш Alt+F11 открываем окно Visual Basic
- Создаем новый модуль Insert -> Module
- Вставляем код
Sub Разделить_столбец_по_книгам()
Const column = 2 'номер столбца, по которому будет происходить разделение.'
Const head = True
Set wbAct = ActiveWorkbook
Set dic = CreateObject("Scripting.Dictionary")
lr = Cells(Rows.Count, 1).End(xlUp).Row
lc = Cells(1, Columns.Count).End(xlToLeft).column
arr = Range("A1", Cells(lr, lc)).Value
If head Then fr = 2 Else fr = 1
For i = fr To UBound(arr)
If Trim(arr(i, column)) <> "" Then dic.Item(arr(i, column)) = dic.Item(arr(i, column)) & "|" & i
Next
iPath = wbAct.Path & Application.PathSeparator & "Result" & Application.PathSeparator
'Result - название папки с результатами'
If Dir(iPath, vbDirectory) = "" Then MkDir iPath
arrDic = dic.keys
Set Rng = Nothing
Application.DisplayAlerts = False
For i = 0 To UBound(arrDic)
rrs = Split(Mid(dic.Item(arrDic(i)), 2), "|")
If head Then Set Rng = Rows(1)
For Each rr In rrs
If Not Rng Is Nothing Then Set Rng = Union(Rows(rr), Rng) Else Set Rng = Rows(rr)
Next
Set wb = Workbooks.Add(1)
Set sh = wb.Sheets(1)
Rng.Copy
sh.[A1].PasteSpecial xlPasteColumnWidths
sh.[A1].PasteSpecial xlPasteAll
Set Rng = Nothing
wb.SaveAs iPath & Replace_symbols(arrDic(i)) & ".xlsx", xlOpenXMLWorkbook
wb.Close False
Next
Application.DisplayAlerts = True
End Sub
'Замена запрещённых символов в имени файла или папки'
Function Replace_symbols(ByVal txt As String) As String
St$ = "\/~!@#$%^&*=|`'"""
For i% = 1 To Len(St$)
txt = Replace(txt, Mid(St$, i, 1), "_")
Next
Replace_symbols = txt
End Function
- На второй строке кода, цифру 2 замените на номер столбца, в котором содержится критерий для разбиения
- Сохраните код Ctrl+S
- Сохраните файл Excel, как книгу с поддержкой макросов xlsm
- Выполните макрос Alt+F8
Папка с новыми файлами будет лежать по тому же пути, что и файл, в котором вы запускали макрос
Заключение
С помощью этого руководства и готового кода макроса Вы сможете сэкономить свое время и за несколько минут создать столько книг Excel, сколько уникальных значений в выбранном Вами столбце. Вся остальная информация автоматически перенесется в новые книги.
У нас Вы можете заказать выполнение задач по MS Excel и Google таблицам
А также, пройти бесплатные онлайн курсы по MS Excel с заданиями
Добрый день!
Такая проблема: нужно срочно разделить огромный массив данных и сгруппировать его в новых файлах по фильтру. В ручную это делать очень долго и невыносимо.
Суть:
В рабочем файле десяток столбцов и полторы тысячи строк. Нужен макрос, который отсортирует по двум параметрам и сохранит результат отдельным файлам с названием из ячеек(сперва дата, затем договор).
А именно:
Фильтр по ячейке Дата 2 (J) и Договор (I).
Диапазон сохранения данных в новый файл со столбца A, по столбец I(включительно).
Как должен выглядеть финальный результат: создаются файлы с названием(к примеру) «08.06.2020 55.34-ПП (1).xlsx», «08.06.2020 55.34-ПП (2).xlsx», «09.06.2020 55.34-ПП (2).xlsx» и так далее, в которых содержится информация из диапазона A:I. В файле с названием «08.06.2020 55.34-ПП (1).xlsx» должны содержатся все строки где Дата 2 (J) и Договор (I) соответствуют тому, что в названии.
Важный момент: нельзя сохранить файл со слешем в названии из Договора (I), поэтому его необходимо заменять на точку.
Содержание
- Разбиение текстового файла (в т.ч. CSV) на несколько файлов с заданным количеством строк
- Комментарии
- Как разделить .xlsx по строкам?
- Vba excel разбить файл
- Vba excel разбить файл
- Как разделить файл Excel на отдельные файлы (по листам)
- Делим файл Excel на несколько файлов по листам
- Делим файл Excel на несколько PDF файлов по листам
- Разделите только те рабочие листы, в которых содержится слово/фраза, на отдельные файлы Excel
Разбиение текстового файла (в т.ч. CSV) на несколько файлов с заданным количеством строк
Функция предназначена для разбивки текстового файла на несколько файлов меньшего размера — в каждом из которых будет не более заданнного количества строк
Разделитель строк (обычно это перевод строки — константа vbNewLine) задаётся в качестве параметра функции Delimiter$
Создаваемые файлы получают имена вида filename(1).txt, filename(2).txt и т.д.
Если задан параметр функции DeleteSourceFile равным TRUE, — то исходный файл удаляется после разделения
Функция возвращает коллекцию, содержащую пути к сформированным файлам
В начало каждого создаваемого файла дописывается строка заголовка — первая строка из исходного файла
Пример использования функции SplitTextFile:
Результат работы примера (из окна Immediate редактора VBA)
Создан файл: C:test2011 04 17 12-32-30(1).csv
Создан файл: C:test2011 04 17 12-32-30(2).csv
Создан файл: C:test2011 04 17 12-32-30(3).csv
Код функции SplitTextFile:
Комментарии
Не удержался напишу) На ваш комментарий Дмитрию на счет больших файлов — больше всего понравилась софтина ASAP Utilities, функционал очень богатый, а для разбиения на файлы по строкам Sheets » Split the selected range into multiple worksheets..к вам забрел с тем же вопросом, пока в данной надстройке не нашел
Дмитрий, данный макрос не рассчитан на файлы размером 117мб
(он для маленьких файлов — до 1-10 Мб)
Для огромных файлов (как ваш) — совсем другие технологии обработки надо применять (построчное чтение),
чтобы быстрее всё работало, и памяти хватало на обработку.
Не пытайтесь найти такое у меня на сайте, — мои «универсальные» макросы не рассчитаны на файлы такого объема
Да, и если читать файл не ReadAll, а ReadLine, то строки корректно читаются при отладке. Но так как строк много, то в режиме отладки весь файл нет желания гонять, а как только работа начинается в обычном режиме, эксель виснет. Может это из-за большого числа строк?
Спасибо за ответ! Но не помогло. В окне отладчика вижу, что в txt появились символы ? вместо текста, а на строке txt = Split(txt, Delimiter$, 2)(1) вылетает ошибка subscript out of range. Насколько я понял — не видит разделителя и не может разбить строку на подстроки.
у вас файл в другой кодировке (unicode) — дополнительный параметр TRUE как раз для этого предназначен
Здравствуйте! Ваш код использую для обработки файлов. Но при обработке очередного файла в строке Set ts = fso.OpenTextFile(filename, 1, True): txt = ts.ReadAll: ts.Close не читается исходный файл. В txt передается «». Исходный файл csv. Подобных файлов (и по структуре и типу данных) обработано с десяток, было все отлично, а тут проблема. Не могу понять в чем причина. Может подскажете? Единственное отличие этот злополучный файл больше других — 117мб
Спасибо, попробую. Извините, что вопрос не по теме — не разобрался по порядку общения. Я тут в первый раз.
Марат, а какое отношение ваш вопрос имеет к теме статьи?
Задайте вопрос на форуме по Excel, — там подскажут.
Я бы использовал GetObject для получения доступа к файлу, если известен путь, по которому файл сохранён.
Здравствуйте Игорь, проблема такая — открыты два экселевских файла, но оба в своих родительских окнах, необходимо из одного файла перекинуть информацию в другой. Макрос, прикрепленный к одному из файлов, не видит книгу в другом родительском окне. Как его все-таки увидеть?
Галия, в данном случае в коде очень много чего менять надо.
Проще написать макрос «с нуля».
Оформляйте заказ на сайте (если готовы оплатить помощь),
или обратитесь на форумы по Excel (если хотите, чтобы вам помогли бесплатно)
Спасибо, очень помогли!
Подскажите, пожалуйста, еще немножко
Есть экселевский файл, в нем несколько столбцов. Необходимо, например, если значение в столбце А больше 0, записывать в первый файл, если больше 5, в следующий, т.е. кол-во строк в файлах мы сами не задаем, а определяем из условия. Как это реализовать? Как я понимаю, нужно поменять в этом месте
If rc>= MaxRowsCount& .
На что-то в этом роде
If Cells(i, «A») >0 «0» Then ..
дальше вот как с файлами работать не знай
Получатся текстовые файлы с расширением xls — Excel их поймёт.
чтобы XLSX получить, — это код заметно переделывать надо.
Здравствуйте! Скажите, пожалуйста, можно ли как-нибудь изменить макрос, чтоб новые файлы были с расширением .xlsx?
Источник
Как разделить .xlsx по строкам?
Если файл сохранён на диске, можно так:
1. Открываете книгу с данными на нужном листе
2. Заходите в VBA (Alt+F11)
3. Выбираете в меню Insert -> Module
4. Вставляете нижеприведённый код
5. Нажимаете F5 (не сохраняете исходный файл)
Никакие C++ запускать не надо.
Для пытливых умов: Отказ от Слияния в пользу шаблонов https://toster.ru/q/320942
kolyayolo, благодарю за замечание (обновил код), и хороший вопрос.
Для переноса ширины колонок нужно после объявления переменных сохранить значения ширины колонок в массив:
Затем, после вставки данных перенести значения ширины колонок из массива:
Спасибо за решение, искал везде, ваш подошел идеально! Единственный вопрос — а как сделать, чтобы полученные таблицы-файлы были «упакованы» в умные таблицы на выходе? Я не силен в VBA, подскажете какой код и куда его вписать?
Добавил код, который добавляет умную таблицу к диапазону, но есть проблема. У меня файлы формируются из заранее подготовленной умной таблицы, т.е. она разбивается на части. И этот (ваш) код получается формирует файлы с не отформатированными диапазонами, а последний файл именно форматируется в умную таблицу (как бы унаследует формат из исходного файла). Т.е. не все сформированные файлы с умными таблицами получаются, а только последний. А мне нужно, чтобы все были оформлены в умные таблицы. Я добавил код, который добавляет формат в полученные файлы, вот такое у меня получилось:
Но в результате получается ошибка, т.к. система пытается последнюю таблицу, которая «умная» тоже повторно оформить.
Подскажете, как подправить?
kolyayolo, alcompstudio, на технических ресурсах принято выражать свою положительную оценку кнопкой «Нравится«, тем самым указывая на полезность материала.
Для создания умной таблицы для всего активного листа с именем «Table_1» используется следующий метод (четвёртый параметр указывает на наличие заголовков):
Источник
Vba excel разбить файл
Модератор форума: китин, _Boroda_
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Создать макрос который разделит файл группируя по значениям (Макросы/Sub)
Создать макрос который разделит файл группируя по значениям
exPower | Дата: Четверг, 08.10.2020, 13:02 | Сообщение № 1 | |
|
0 / 0 / 0 Регистрация: 13.04.2014 Сообщений: 15 |
|
1 |
|
Разделение файла на несколько частей(макрос)29.04.2014, 13:19. Показов 30031. Ответов 21
Ребят кто-нить помогите. Я уже отчаялся не знаю как сделать это «Разделить файл на несколько частей с помощью макроса в Excel». Может остались люди добрые, буду признателен.
0 |
15136 / 6410 / 1730 Регистрация: 24.09.2011 Сообщений: 9,999 |
|
29.04.2014, 13:46 |
2 |
1. Какой файл — двоичный, текстовый, книга Excel, документ Word, …?
0 |
0 / 0 / 0 Регистрация: 13.04.2014 Сообщений: 15 |
|
29.04.2014, 17:11 [ТС] |
3 |
Файл Excel, делить на куски заданного размера. Добавлено через 1 час 38 минут Добавлено через 1 час 39 минут
0 |
Казанский 15136 / 6410 / 1730 Регистрация: 24.09.2011 Сообщений: 9,999 |
||||||||
29.04.2014, 19:00 |
4 |
|||||||
РешениеПробуйте
Добавлено через 8 минут
1 |
0 / 0 / 0 Регистрация: 13.04.2014 Сообщений: 15 |
|
29.04.2014, 19:19 [ТС] |
5 |
Теперь бы понять, что где, куда, зачем и как =
0 |
15136 / 6410 / 1730 Регистрация: 24.09.2011 Сообщений: 9,999 |
|
29.04.2014, 19:27 |
6 |
F1 — Создание макроса
0 |
0 / 0 / 0 Регистрация: 13.04.2014 Сообщений: 15 |
|
29.04.2014, 19:33 [ТС] |
7 |
Ну вот например у меня файл есть. С макросами я не очень вообще.
0 |
15136 / 6410 / 1730 Регистрация: 24.09.2011 Сообщений: 9,999 |
|
29.04.2014, 23:37 |
8 |
РешениеЧувствую я, что совсем не это Вам нужно. Ну вот макрос в файле.
2 |
0 / 0 / 0 Регистрация: 13.04.2014 Сообщений: 15 |
|
30.04.2014, 05:35 [ТС] |
9 |
Огромное спасибо. Прям жизнь спас. Еще остались все же добрые люди.
0 |
0 / 0 / 0 Регистрация: 13.04.2014 Сообщений: 15 |
|
02.05.2014, 12:59 [ТС] |
10 |
Извини, что отвлекаю или мешаю, но сможешь комментарии по коду написать, а то проблемка.
0 |
Казанский 15136 / 6410 / 1730 Регистрация: 24.09.2011 Сообщений: 9,999 |
||||||
02.05.2014, 22:47 |
11 |
|||||
Scorpion86rus, получайте.
Вложения
1 |
0 / 0 / 0 Регистрация: 13.04.2014 Сообщений: 15 |
|
02.05.2014, 23:17 [ТС] |
12 |
Спасибо еще раз и извини за беспокойство, и доставления не удобств.
0 |
0 / 0 / 0 Регистрация: 20.11.2018 Сообщений: 6 |
|
02.12.2018, 13:46 |
13 |
Казанский, добрый день! Сможете ли Вы на платной основе написать макро такого плана — деление файла на 500 строк и сохранение каждого в таблицу хмл 2003?
0 |
Модератор 11342 / 4661 / 748 Регистрация: 07.08.2010 Сообщений: 13,508 Записей в блоге: 4 |
|
02.12.2018, 14:16 |
14 |
деление файла на 500 строк и сохранение каждого в таблицу хмл 2003? не смогла понять
0 |
0 / 0 / 0 Регистрация: 20.11.2018 Сообщений: 6 |
|
04.12.2018, 20:03 |
15 |
Добрый день! я дуб дубом в екселях и прочих…. Поэтому опишу, что я делаю и что мне нужно. У меня есть поставщики, которые предоставляют файл наличия товаров для выгрузки в интернет магазин. Этот файл очень большой 20 тыс товаров. Чтобы обновить все товары на сайте я должна этот файл разделить на 500, т.к в магазин больше не загрузишь, программа сразу вылетает. Грубо говоря в файле 20 тысяч комплекто востельного белья а мне надо по 500. и так прогружать каждый файл. Файл я скачиваю в таком формате. — XML. ЗАТЕМ В НОТЕПАД ++ МЕНЯЮ И ОТКРЫВАЮ УЖЕ ПРИ ПОМОЩИ ЕКСЕЛЬ. ЗАТЕ ДЕРБАНЮ НА ФАЙЛЫ ПО 500 ТОВАРОВ В КАЖДОМ И СОХРАНЯЮ (СОХРАНИТЬ КАК) ТАБЛИЦА XML 2003/иМЕННО ЭТОТ ФОРМАТ МОЖНО ЗАГРУЗИТЬ НА САЙТ
0 |
0 / 0 / 0 Регистрация: 20.11.2018 Сообщений: 6 |
|
08.12.2018, 15:10 |
16 |
Добрый деньshanemac51, Добрый день! я дуб дубом в екселях и прочих…. Поэтому опишу, что я делаю и что мне нужно. У меня есть поставщики, которые предоставляют файл наличия товаров для выгрузки в интернет магазин. Этот файл очень большой 20 тыс товаров. Чтобы обновить все товары на сайте я должна этот файл разделить на 500, т.к в магазин больше не загрузишь, программа сразу вылетает. Грубо говоря в файле 20 тысяч комплекто востельного белья а мне надо по 500. и так прогружать каждый файл. Файл я скачиваю в таком формате. — XML. ЗАТЕМ В НОТЕПАД ++ МЕНЯЮ И ОТКРЫВАЮ УЖЕ ПРИ ПОМОЩИ ЕКСЕЛЬ. ЗАТЕ ДЕРБАНЮ НА ФАЙЛЫ ПО 500 ТОВАРОВ В КАЖДОМ И СОХРАНЯЮ (СОХРАНИТЬ КАК) ТАБЛИЦА XML 2003/иМЕННО ЭТОТ ФОРМАТ МОЖНО ЗАГРУЗИТЬ НА САЙТ
0 |
Модератор 11342 / 4661 / 748 Регистрация: 07.08.2010 Сообщений: 13,508 Записей в блоге: 4 |
|
08.12.2018, 21:34 |
17 |
ЗАТЕМ В НОТЕПАД ++ МЕНЯЮ а в нем то что делаете
0 |
0 / 0 / 0 Регистрация: 20.11.2018 Сообщений: 6 |
|
09.12.2018, 15:10 |
18 |
кодировки и сохраняю в utf8. ВСе! Открываю этот файл в ексель и делю на части. затем сохраняю хмл 2003
0 |
Модератор 11342 / 4661 / 748 Регистрация: 07.08.2010 Сообщений: 13,508 Записей в блоге: 4 |
|
09.12.2018, 16:59 |
19 |
Файл я скачиваю в таком формате. — XML. хотелось бы его увидеть —предполагаю, что это длиннющая строка без нормальной разбивки на подстроки(по документам) пару дней назад видела файл в одну строку в 840мб
0 |
Модератор 11342 / 4661 / 748 Регистрация: 07.08.2010 Сообщений: 13,508 Записей в блоге: 4 |
|
23.01.2019, 09:40 |
20 |
У меня есть поставщики, которые предоставляют файл наличия товаров для выгрузки в интернет магазин. Этот файл очень большой 20 тыс товаров. выложите пример файла
0 |
Разделитель Excel документов
Разделите Excel на несколько файлов онлайн. Используйте разделитель Excel документов с любого устройства с современным браузером вроде Chrome и Firefox.
Отправить ссылку на скачивание
Excel Файлы электронных таблиц
Файл электронной таблицы содержит данные в виде строк и столбцов. Вы можете открывать, просматривать и редактировать такие файлы с помощью приложений для работы с электронными таблицами, таких как Microsoft Excel, которые теперь доступны как для операционных систем Windows, так и для MacOS. Точно так же Google Sheets — это бесплатный онлайн-инструмент для создания и редактирования электронных таблиц, который работает в любом веб-браузере.
- Легкое разделение Excel страниц документа
- Отделить страницы от Excel файла
- Загрузка или отправка результирующего файла в виде вложения электронной почты
Как разделить Excel документ онлайн
- Выберите и загрузите Excel документ, который хотите разделить.
- Укажите необходимые номера страниц и нажмите кнопку Разделить.
- Нажмите кнопку Скачать и сохраните разделенный Excel документ.
- Чтобы отправить ссылку на скачивание документа по электронной почте нажмите кнопку Email.
ВОПРОСЫ И ОТВЕТЫ
Другие форматы, поддерживаемые GroupDocs.Splitter
Вы также можете разделять документы других форматов. Полный список представлен ниже.
Сохранение листов книги как отдельных файлов
Про сборку листов из нескольких книг в одну текущую я уже писал здесь. Теперь разберем решение обратной задачи: есть одна книга Excel, которую нужно «разобрать», т.е. сохранить каждый лист как отдельный файл для дальнейшего использования.
Примеров подобного из реальной жизни можно привести массу. Например, файл-отчет с листами-филиалами нужно разделить на отдельные книги по листам, чтобы передать затем данные в каждый филиал и т.д.
Если делать эту процедуру вручную, то придется для каждого листа выполнить немаленькую цепочку действий (выбрать лист, правой кнопкой по ярлычку листа, выбрать Копировать, указать отдельный предварительно созданный пустой файл и т.д.) Гораздо проще использовать короткий макрос, автоматизирующий эти действия.
Способ 1. Простое разделение
Нажмите сочетание Alt+F11 или выберите в меню Сервис — Макрос — Редактор Visual Basic (Tools — Macro — Visual Basic Editor) , вставьте новый модуль через меню Insert — Module и скопируйте туда текст этого макроса:
Если теперь выйти из редактора Visual Basic и вернуться в Excel, а затем запустить наш макрос (Alt+F8), то все листы из текущей книги будут разбиты по отдельным новым созданным книгам.
Способ 2. Разделение с сохранением
При необходимости, можно созданные книги сразу же сохранять под именами листов. Для этого макрос придется немного изменить, добавив команду сохранения в цикл:
Этот макрос сохраняет новые книги-листы в ту же папку, где лежал исходный файл. При необходимости сохранения в другое место, замените wb.Path на свой путь в кавычках, например «D:Отчеты2012» и т.п.
Если нужно сохранять файлы не в стандартном формате книги Excel (xlsx), а в других (xls, xlsm, xlsb, txt и т.д.), то кроме очевидного изменения расширения на нужное, потребуется добавить еще и уточнение формата файла — параметр FileFormat:
Для основных типов файлов значения параметра FileFormat следующие:
- XLSX = 51
- XLSM = 52
- XLSB = 50
- XLS = 56
- TXT = 42
Способ 3. Сохранение в новые книги только выделенных листов
Если вы хотите раскидать по файлам не все листы в вашей книге, а только некоторые, то макрос придется немного изменить. Выделите нужные вам листы в книге, удерживая на клавиатуре клавишу Ctrl или Shift и запустите приведенный ниже макрос:
Создавать новое окно и копировать через него, а не напрямую, приходится потому, что Excel не умеет копировать группу листов, если среди них есть листы с умными таблицами. Копирование через новое окно позволяет такую проблему обойти.
Способ 4. Сохранение только выделенных листов в новый файл
Во всех описанных выше способах каждый лист сохранялся в свой отдельный файл. Если же вы хотите сохранить в отдельный новый файл сразу группу выделенных предварительно листов, то нам потребуется слегка видоизменить наш макрос:
Способ 5. Сохранение листов как отдельных PDF-файлов
- для этого используется уже другой метод (ExportAsFixedFormat а не Copy)
- листы выводятся в PDF с параметрами печати, настроенными на вкладке Разметка страницы (Page Layout)
- книга должна быть сохранена на момент экспорта
Нужный нам код будет выглядеть следующим образом:
Способ 6. Готовый макрос из надстройки PLEX
Если лень или нет времени внедрять все вышеописанное, то можно воспользоваться готовым макросом из моей надстройки PLEX:
Как разделить вкладки в excel на два отдельных файла
Как разделить вкладки в Excel?
- Выделите ячейку в том месте, где необходимо разделить лист. …
- Откройте вкладку Вид на Ленте, а затем нажмите команду Разделить.
- Лист будет разделен на несколько областей.
Как разделить окна в Excel на два монитора?
- Откройте первый файл Excel, к которому вы хотите получить доступ, и поместите его на монитор.
- Откройте второй экземпляр Excel на мониторе № 2, выбрав « Пуск»> «Программы»> «Microsoft Office»> «Excel» .
- Переместите этот второй экземпляр Excel в Monitor # 2 .
Как разделить одну таблицу на две в Excel?
- Установить курсор мыши на нужную строку таблицы, и нажать сочетание клавиш Ctrl+Shift+Enter. Таблица разделится на 2 части
- Выбираете меню «Файл — Работа с таблицами — Макет», и в нем находите и выбираете пункт «Разбить таблицу». Работа с таблицами Макет Разделить таблицу
Как открыть 2 файла Excel на одном мониторе?
- Откройте обе книги, которые содержат листы для сравнения.
- На вкладке Вид в группе Окно выберите команду Рядом . …
- В окне каждой книги щелкните лист, который нужно сравнить.
Как вывести на экран два файла Excel?
- После открытия перейдите в панели быстрого доступа на вкладку «Вид».
- После нажатия на пиктограмму «Упорядочить все» на экране появится окошко с контекстным меню, предлагающим выбор расположения окон:
Как разделить таблицу в Excel по вертикали?
- Щелкните ячейку таблицы, которую вы хотите разделить.
- В разделе Работа с таблицами на вкладке Макет в группе Объединение нажмите кнопку Разделить ячейки и сделайте следующее: Для разделения ячейки по вертикали в поле Число столбцов введите нужное число новых ячеек.
- Щелкните ячейку в таблице, из которой вы хотите отделиться, и в Работа с таблицами вкладку нажмите макет > Разделить таблицу, см. …
- И таблица была разделена на две таблицы по горизонтали, как показано на следующем снимке экрана:
Как разделить Excel?
- Выделите одну или несколько ячеек, которые хотите разделить. …
- На вкладке Данные в группе Работа с данными нажмите кнопку Текст по столбцам. …
- Установите переключатель С разделителями, если выбран другой вариант, и нажмите кнопку Далее.
- Щелкните правой кнопкой мыши по значку Excel на панели задач и выберите Microsoft Excel 2010 (или 2007): Затем перейдите в меню File (Файл) > Open (Открыть) и выберите вашу вторую книгу.
- Щелкните по значку программы на панели задач, удерживая клавишу Shift.
Как разделить окно (лист) в Excel Reviewed by Unknown on 2016-01-21T23:56:00+02:00 Rating: 5
Как разделить окно (лист) в Excel
Разделение листов и просмотр книги Excel в разных окнах
- Откройте вкладку Вид на Ленте, а затем выберите команду Новое окно.
- Откроется новое окно для текущей книги.
- Теперь Вы можете сравнивать листы одной и той же книги в разных окнах. В нашем примере мы выберем отчет по продажам за 2013 год, чтобы сравнить продажи в 2012 и в 2013 годах.
- Выделите ячейку в том месте, где необходимо разделить лист. Если Вы выберите ячейку в первом столбце или первой строке, то лист разделится на 2 части, в противном случае на 4. В нашем примере мы выберем ячейку C7.
- Откройте вкладку Вид на Ленте, а затем нажмите команду Разделить.
- Лист будет разделен на несколько областей. Вы можете прокручивать каждую область отдельно, используя полосы прокрутки. Это позволит Вам сравнивать различные разделы одного и того же листа.