Ищу программу для объединения нескольких Excel-файлов



 
Начать новую тему   Ответить на тему    Форумы -> Технопарк
Автор Сообщение
Umberto1986

Участник команды:
Монолит

Че Петр

Зарегистрирован: 2010-01-09
Постов: 718
Местоположение: Калининград

СообщениеДобавлено: Пн 08 Янв 2018 19:35    Заголовок сообщения: Ищу программу для объединения нескольких Excel-файлов Ответить с цитатой

Здравствуйте, друзья! С прошедшими праздниками всех!

Ищу программу для объединения нескольких Excel-файлов одинаковой структуры в один. Пробовал макросы - не помогают. Нужна именно отдельная программа. Она должна подходить к Excel 2007.
Спасибо!
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Землянин


Землянин

Зарегистрирован: 2015-11-22
Постов: 333
Местоположение: Планета Земля

СообщениеДобавлено: Пн 08 Янв 2018 19:44    Заголовок сообщения: Ответить с цитатой

Современные макросы это и есть программа. Язык VBA гибкий и блестяще справится с этой задачей. Но надо на нем немного уметь работать. Готовую программу навряд ли найдешь, попробуй найти программиста.


Последний раз редактировалось: Землянин (Пн 08 Янв 2018 20:58), всего редактировалось 1 раз
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Doctor Fox

Капитан команды Участник команды:
Красная звезда

Александр

Зарегистрирован: 2007-06-29
Постов: 21723
Местоположение: Екатеринбург

СообщениеДобавлено: Пн 08 Янв 2018 20:29    Заголовок сообщения: Ответить с цитатой

Во первых, этот вопрос можно просто нагуглить, набрав в поисковике что-то типа "программа для объединения нескольких XLS". Сомневаюсь, что была такая попытка. А тем временем выдает достаточно много ссылок по интересующей проблеме.

Например, приводится простейший код скрипта на VBA:

Sub GetSheets()
Path = "Укажите пусть до папки с файлами Excel"
Filename = Dir(Path & "*.xls")
Do While Filename <> ""
Workbooks.Open Filename:=Path & Filename, ReadOnly:=True
For Each Sheet In ActiveWorkbook.Sheets
Sheet.Copy After:=ThisWorkbook.Sheets(1)
Next Sheet
Workbooks(Filename).Close
Filename = Dir()
Loop
End Sub


Но боюсь, что вопросов, как его запустить автоматически и пр. появится на порядок больше. ab.gif

Во-вторых, такой вопрос лучше задавать на форумах, обсуждающих разные технические проблемы/решения специально для Excel. Тоже гуглится левой пяткой, даже спецзнаний не нужно.

Например:

Посмотреть
Посмотреть
forum.msexcel.ru
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Umberto1986

Участник команды:
Монолит

Че Петр

Зарегистрирован: 2010-01-09
Постов: 718
Местоположение: Калининград

СообщениеДобавлено: Пн 08 Янв 2018 21:06    Заголовок сообщения: Ответить с цитатой

Doctor Fox писал(а):
Во первых, этот вопрос можно просто нагуглить, набрав в поисковике что-то типа "программа для объединения нескольких XLS". Сомневаюсь, что была такая попытка. А тем временем выдает достаточно много ссылок по интересующей проблеме.

Например, приводится простейший код скрипта на VBA:

Sub GetSheets()
Path = "Укажите пусть до папки с файлами Excel"
Filename = Dir(Path & "*.xls")
Do While Filename <> ""
Workbooks.Open Filename:=Path & Filename, ReadOnly:=True
For Each Sheet In ActiveWorkbook.Sheets
Sheet.Copy After:=ThisWorkbook.Sheets(1)
Next Sheet
Workbooks(Filename).Close
Filename = Dir()
Loop
End Sub


Но боюсь, что вопросов, как его запустить автоматически и пр. появится на порядок больше. ab.gif

Во-вторых, такой вопрос лучше задавать на форумах, обсуждающих разные технические проблемы/решения специально для Excel. Тоже гуглится левой пяткой, даже спецзнаний не нужно.

Например:

Посмотреть
Посмотреть
forum.msexcel.ru


Попытка была, зачем вы уж так... Мне нужно объединить несколько таблиц, чтобы они встали одна над другой. Пока у меня получилось, что они вставали в строчку.
У меня была такая программка, там нарисованы квадратики на иконке, как органайзер, но с переустановкой винды она улетела, и найти её я не могу.
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Doctor Fox

Капитан команды Участник команды:
Красная звезда

Александр

Зарегистрирован: 2007-06-29
Постов: 21723
Местоположение: Екатеринбург

СообщениеДобавлено: Пн 08 Янв 2018 21:18    Заголовок сообщения: Ответить с цитатой

Теперь стало понятнее. Извините, если обидел.

На тех.форумах по Excel просто уже есть готовые решения, а здесь вряд ли, нужно писать программу, как уже говорили коллеги.

Ну или попробуйте взять приведенный выше скрипт (только путь не надо запрашивать, а прописать свой, где файлы будут лежать). Потом загуглить проблему, как автоматически выполнить скрипт при открытии XLS-файла. Ну и останется написать BAT-файл вида:


полный_путь_до_Excel\excel.exe ваш_файл_со_скриптом.xls
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Doctor Fox

Капитан команды Участник команды:
Красная звезда

Александр

Зарегистрирован: 2007-06-29
Постов: 21723
Местоположение: Екатеринбург

СообщениеДобавлено: Пн 08 Янв 2018 21:27    Заголовок сообщения: Ответить с цитатой

Вот еще готовые решения:

Посмотреть

Посмотреть
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Umberto1986

Участник команды:
Монолит

Че Петр

Зарегистрирован: 2010-01-09
Постов: 718
Местоположение: Калининград

СообщениеДобавлено: Пн 08 Янв 2018 22:30    Заголовок сообщения: Ответить с цитатой

Doctor Fox писал(а):
Вот еще готовые решения:

Посмотреть

Посмотреть


Спасибо, попробую. По результатам отпишусь, когда получится.
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Plohoj


Денис

Зарегистрирован: 2009-02-20
Постов: 1741
Местоположение: Ессентуки

СообщениеДобавлено: Пн 08 Янв 2018 23:19    Заголовок сообщения: Ответить с цитатой

А что значит "объединить"?
Есть различные файлы эксель. каждый из которых содержит один лист.
И нужно их слить в один новый файл эксель, чтобы были на нем разные листые, соответсвующие исходным файлам?
Если да, то надстройка Plex с этим отлично справляется. Она объединяет и разделяет листы в файлы.

Если не правильно понял "объединить", то могли бы сказать что это значит...
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Umberto1986

Участник команды:
Монолит

Че Петр

Зарегистрирован: 2010-01-09
Постов: 718
Местоположение: Калининград

СообщениеДобавлено: Вт 09 Янв 2018 20:39    Заголовок сообщения: Ответить с цитатой

Всем спасибо. Вопрос решён с помощью макроса в ВБА. Спасибо золотому человеку из столицы прекрасной Белоруссии: три часа своего драгоценного времени она уделила для решения задачи. От начала и до конца. Умничка, спасибо огромное!
Счастья тебе, добрый человек!
Ссылку и имя не пишу, если автор захочет (разрешит), то я ссылку дам.
Макрос есть, кому надо, могу выложить, если автор разрешит.
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Doctor Fox

Капитан команды Участник команды:
Красная звезда

Александр

Зарегистрирован: 2007-06-29
Постов: 21723
Местоположение: Екатеринбург

СообщениеДобавлено: Вт 09 Янв 2018 21:01    Заголовок сообщения: Ответить с цитатой

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

bi.gif
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Umberto1986

Участник команды:
Монолит

Че Петр

Зарегистрирован: 2010-01-09
Постов: 718
Местоположение: Калининград

СообщениеДобавлено: Вт 09 Янв 2018 23:36    Заголовок сообщения: Ответить с цитатой

Doctor Fox писал(а):
Ну хорошо же, что помогли. И я посильно пытался помочь, но я программирую в других вещах, а все равно полез искать скрипты. Но сделали под заказ. Это очень хороший человек, согласен.

bi.gif


Да, Вам тоже спасибо. Интересные ссылки, взял. А вы тоже программируете? Для меня это тёмный лес - как увижу всю эту абракадабру, так голова кругом.
Вернуться к началу
Посмотреть профайл Отправить личное сообщение
Начать новую тему   Ответить на тему    Форумы -> Технопарк Часовой пояс: GMT +3:00
 

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах