Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.12.2009, 10:12   #1
pasha26
Новичок
Джуниор
 
Регистрация: 22.12.2009
Сообщений: 2
По умолчанию Слияние файлов

Прощу сильно не пинать. Поиском пользовался, не особо (вернее вообще не силен) в VBA. Требуется просумировать значения из N количества файлов из одного каталога в один файл. Имена у файлов могут быть разные, а структура всегда одинаковая.Заранее всем спасибо.
Вложения
Тип файла: rar ф.33.rar (22.9 Кб, 19 просмотров)
pasha26 вне форума Ответить с цитированием
Старый 22.12.2009, 20:10   #2
пасечник
Заблокирован
 
Регистрация: 24.06.2009
Сообщений: 28
По умолчанию

Писать проги для заполнения таких форм - неблагодарное занятие.
Не успешь написать и "выбрать" ошибки, как какой-нибудь розовощекий дядя даст указание изменить форму.
Да и если N<10, руками быстре будет.
пасечник вне форума Ответить с цитированием
Старый 22.12.2009, 22:06   #3
андей
Пользователь
 
Регистрация: 27.09.2008
Сообщений: 69
По умолчанию

задание не понято
какие листы. диапазоны?
и зачем нужно объединение ячеек? это жуть!
в сети полно практически готовых кодов для таких вещей
вам пригодится последовательное открытие всех файлов по указанному пути и вытаскивание из них нужных диапазонов в сводный файл с накоплением
Андрей
андей вне форума Ответить с цитированием
Старый 22.12.2009, 23:02   #4
пасечник
Заблокирован
 
Регистрация: 24.06.2009
Сообщений: 28
По умолчанию

Код:
Sub F33()
With Application.FileSearch
.NewSearch
.LookIn = ThisWorkbook.Path
.FileType = 4 ' ExcelWorkbooks
If .Execute = 0 Then Exit Sub
    Dim c As New Collection
    For i = 1 To .FoundFiles.Count
    If ThisWorkbook.FullName <> .FoundFiles(i) Then c.Add .FoundFiles(i)
    Next i
End With
If c.Count = 0 Then Exit Sub

Dim r2 As Range, r34 As Range, r5 As Range, r6 As Range, r7 As Range, x As Integer
Dim s2 As String, s34 As String, s5 As String, s6 As String, s7 As String, cl As Range
Application.ScreenUpdating = False

' далее только для листа Sheets("стр.6")
s6 = "BJ9:FD20,DF22,EO22,R23" ' список изменяемых в Sheets("стр.6") ячеек
Set r6 = ThisWorkbook.Sheets("стр.6").Range(s6)
r6 = 0 ' очистка изменяемых ячеек (необходима для всех итоговых изменяемых листов)

' суммирование для Sheets("стр.6")
For Each ci In c
With GetObject(ci)
    For Each cl In r6
    x = .Sheets("стр.6").Range(cl.Address).Value
    If x Then cl.Value = cl.Value + x
    Next cl
.Close SaveChanges:=False ' если была открыта, то закрывать не надо?
End With
Next ci
End Sub
пример создан только для листа "стр.6"
код для остальных 1000 ячеек за Вас бесплатно будете делать сами
обработка возможных ошибок - также на вашей совести

помещаем итоговый и исходные файлы в одну директорию
никаких других файлов в этой директории!
заранее позаботьтесь, чтобы имена файлов были разные
фраза "одинаковая структура" подразумевает одинаковые количество, названия, структуру листов

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

бесплатная помощь незнакомых людей - не лучший способ решения проблем
рекомендую: http://excelvba.ru/
пасечник вне форума Ответить с цитированием
Старый 23.12.2009, 08:15   #5
pasha26
Новичок
Джуниор
 
Регистрация: 22.12.2009
Сообщений: 2
По умолчанию

Всем спасибо, кто откликнулся. Будем разбираться. Честно говоря думал есть универсальный макрос, который бегает по всем полям книги и суммирует.
pasha26 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Слияние двух файлов в один hen Общие вопросы C/C++ 1 07.10.2009 22:59
Чересстрочное слияние двух файлов в один hen Общие вопросы C/C++ 5 01.10.2009 15:15
Слияние Николетта Microsoft Office Excel 2 30.04.2009 04:47
Слияние нескольких wav файлов lacost Мультимедиа в Delphi 1 30.09.2008 19:25
Слияние двух текстовых файлов nataly_ukr Общие вопросы Delphi 5 26.12.2007 16:45