|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
11.04.2010, 17:57 | #1 |
Регистрация: 11.04.2010
Сообщений: 3
|
Сумирование данных конкретных столбцов из разных книг
Доброго времени суток!
Подскажите пожалуйста! Как решить такую задачу? Есть некая таблица шаблон с формой заказа для магазина. Магазинов несколько, соответственно каждый высылает свой заказ, заполняя столбец "кол-во в шт.". Нужно что бы данные собирались в одном файле и суммировались в столбце "кол-во в шт." т. е. давался общий заказ по всем магазинам. Нашел макрос который в прицепе умеет почти все что мне нужно только он в конечном файле выдает не весь шаблон целиком а только данные, которые собрал из разных книг и не суммирует их, а выдает сначала данные 1 книги ниже 2 книги и т.д. Пожалуйста помогите подкорректировать макрос, либо написать новый который решал бы мою проблему. Код: Option Explicit Sub Consolidated_Range_of_Books_and_She ets() Dim iPivotRange As Range, iDestinationRange As Range, iBeginRange As Range, Sheet Dim iRngAddress As String, oAwb As String, DataSheet As String, _ iCopyAddress As String, sSheetName As String, oFile Dim lLastrow As Long, lLastRowMyBook As Long Dim iLastColumn As Integer Dim Str() As String ThisWorkbook.Sheets.Add After:=Sheets(Sheets.Count) DataSheet = ThisWorkbook.ActiveSheet.Name On Error Resume Next Set iBeginRange = Application.InputBox("Выберите диапазон сбора данных." & vbCrLf & _ "1. При выборе только одной ячейки данные будут собраны со всех листов начиная с этой ячейки. " & _ vbCrLf & "2. При выделении нескольких ячеек данные будут собраны только с указанного диапазона всех листов.", Type:=8) If iBeginRange Is Nothing Then Exit Sub sSheetName = InputBox("Введите имя листа, с которого собирать данные(если не указан, то данные собираются со всех листов)", "Параметр") If sSheetName = "" Then sSheetName = "*" On Error GoTo 0 With Application.FileDialog(msoFileDialo gFilePicker) .AllowMultiSelect = True .InitialFileName = "*.*" .Title = "Выберите файлы" If .Show = False Then Exit Sub For Each oFile In .SelectedItems Workbooks.OpenText Filename:=oFile oAwb = Dir(oFile, vbDirectory) Application.ScreenUpdating = False Workbooks(oAwb).Activate For Each Sheet In Sheets If Sheet.Name Like sSheetName Then Sheet.Activate Select Case iBeginRange.Count Case 1 lLastrow = Cells(1, 1).SpecialCells(xlLastCell).Row iLastColumn = Cells.SpecialCells(xlLastCell).Colu mn iCopyAddress = Range(Cells(iBeginRange.Row, iBeginRange.Column), Cells(lLastrow, iLastColumn)).Address Case Else iCopyAddress = iBeginRange.Address lLastrow = iBeginRange.Rows.Count iLastColumn = iBeginRange.Columns.Count End Select lLastRowMyBook = ThisWorkbook.Sheets(DataSheet).Cell s.SpecialCells(xlLastCell).Row + 1 iRngAddress = Range(Cells(lLastRowMyBook, 1), Cells(lLastRowMyBook + lLastrow, iLastColumn)).Address Sheet.Range(iCopyAddress).Copy Destination:=ThisWorkbook.Sheets(Da taSheet).Range(iRngAddress) End If Next Sheet Workbooks(oAwb).Close False Next oFile End With Application.ScreenUpdating = True End Sub |
11.04.2010, 18:06 | #2 |
Участник клуба
Регистрация: 17.07.2009
Сообщений: 1,088
|
А Вы не пробовали воспользоваться Консолидацией? Она может суммировать данные со многих книг и листов...
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru |
11.04.2010, 20:37 | #3 |
Регистрация: 11.04.2010
Сообщений: 3
|
Пробовал, но когда я добавляю один из множества файлов и жму добавить появляется окно с тестом "Недоступная ссылка консолидации". Что делать в этом случаи??
|
11.04.2010, 21:45 | #4 |
Участник клуба
Регистрация: 17.07.2009
Сообщений: 1,088
|
Надо перед консолидацией выделить пустую ячейку без данных. Чтоб новые данные не затерли имеющиеся на листе.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru |
11.04.2010, 22:01 | #5 |
Регистрация: 11.04.2010
Сообщений: 3
|
Пробовал все равно не выходит. Опять выводит сообщение "недоступная ссылка консолидации".
Последний раз редактировалось EducatedFool; 11.04.2010 в 23:06. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
сбор данных с разных книг в одну | Ledy1987 | Microsoft Office Excel | 26 | 20.04.2011 21:33 |
вставка данных из разных книг в один лист | Aigulasan | Microsoft Office Excel | 3 | 26.03.2010 22:17 |
Подстановка данных из разных книг по 3-ем условиям | hromovea | Microsoft Office Excel | 4 | 12.09.2009 12:38 |
Сводный отчет из разных книг | ЯИЛЬЯ | Microsoft Office Excel | 7 | 12.09.2008 14:32 |
Свод из разных книг | RUBEY | Microsoft Office Excel | 5 | 23.08.2008 13:25 |