в Excel создать сводную таблицу

Статус
Закрыто для дальнейших ответов.

Krendelechek

Участник
Топикстартер
Сообщения
5
Реакции
0
У меня есть файл Excel, который состоит из множества страниц. нужно сделать сводную таблицу в другом файле. Как это сделать?
 
Ответ: в Excel создать сводную таблицу

Первое что приходит на ум - гиперссылками. Но, вообще-то, excel не издательская программа.
 
Ответ: в Excel создать сводную таблицу

Копи паст?
 
Ответ: в Excel создать сводную таблицу

Krendelechek сказал(а):
У меня есть файл Excel, который состоит из множества страниц. нужно сделать сводную таблицу в другом файле. Как это сделать?

Если вас устроит собирание информации со всех листов на один, то могу предложить макрос, который добавляет пустой лист и на него "собирает" данные с остальных листов.
 
Ответ: в Excel создать сводную таблицу

aleksasha сказал(а):
Если вас устроит собирание информации со всех листов на один, то могу предложить макрос, который добавляет пустой лист и на него "собирает" данные с остальных листов.
Великолепно! Именно это мне и нужно!
 
Ответ: в Excel создать сводную таблицу

Krendelechek сказал(а):
Великолепно! Именно это мне и нужно!

Экселевский макрос. В нем ограничение на количество считываемых столбцов. Если сам не сможешь модифицировать под свои нужды, дай знать, переделаю.
Код:
Sub All_to_last_page()

ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count)
Worksheets(Worksheets.Count).Activate
Worksheets(Worksheets.Count).Name = "All"
Cells.Select
Selection.NumberFormat = "@"

myStroka1 = 1                      ' Объявляем номер начальной строки последнего листа
myCount = Worksheets.Count         ' Кол-во страниц
    
    For i = 1 To (myCount - 1)     ' с 1 по предпоследний лист перебираем
      myStroka = 1                 '
      myStolbets = 1               '
      myName = Worksheets(i).Name  ' Извлекаем имя текущего листа
        ' Пока на искомом листе три ячейки в строке подряд не будут пустыми
        If Worksheets(i).Cells(myStroka, myStolbets).Value <> "" Or Worksheets(i).Cells(myStroka, myStolbets + 1).Value <> "" Or Worksheets(i).Cells(myStroka, myStolbets + 2).Value <> "" Then
             Cells(myStroka1, 1).Value = myName  ' Вписываем имя листа
             Cells(myStroka1, 1).Font.Bold = True
             myStroka1 = myStroka1 + 1
        End If
        
        Do While Worksheets(i).Cells(myStroka, myStolbets).Value <> "" Or Worksheets(i).Cells(myStroka, myStolbets + 1).Value <> "" Or Worksheets(i).Cells(myStroka, myStolbets + 2).Value <> ""
        
                Worksheets(myCount).Cells(myStroka1, myStolbets).Value = Worksheets(i).Cells(myStroka, myStolbets).Value
                Worksheets(myCount).Cells(myStroka1, myStolbets + 1).Value = Worksheets(i).Cells(myStroka, myStolbets + 1).Value
                Worksheets(myCount).Cells(myStroka1, myStolbets + 2).Value = Worksheets(i).Cells(myStroka, myStolbets + 2).Value
                Worksheets(myCount).Cells(myStroka1, myStolbets + 3).Value = Worksheets(i).Cells(myStroka, myStolbets + 3).Value
        
            myStroka1 = myStroka1 + 1
            myStroka = myStroka + 1
        Loop
    Next i
Worksheets(myCount).Activate
Range("A1").Select

End Sub
 
Ответ: в Excel создать сводную таблицу

"Сводной таблицей" не стоило называть подобный сбор данных. В Экселе этим термином называю нечто другое... Если не секрет, какого рода данные собираете?
 
Ответ: в Excel создать сводную таблицу

aleksasha сказал(а):
"Сводной таблицей" не стоило называть подобный сбор данных. В Экселе этим термином называю нечто другое... Если не секрет, какого рода данные собираете?
Никакого секрета. Нужно просто снести количество сданых объявлений по каждому агентству. На листах они идут к-во умножить на цену=сумма... по дням недели. Теперь нужна сводная количество по дням и по фирмам. Только и всего. Простите, я по вашему макросу ничего не понимаю... (краснеет) Не могли бы вы более популярно объяснить как пользоваться вашей шпаргалкой? )))
 
Ответ: в Excel создать сводную таблицу

Чей-то он (макрос) как-то так работает... непонятно... Скорее всего это я что-то не так сделала. Расскажите... КАК надо!
 
Ответ: в Excel создать сводную таблицу

Krendelechek сказал(а):
Чей-то он (макрос) как-то так работает... непонятно... Скорее всего это я что-то не так сделала. Расскажите... КАК надо!

Alt+F11
слева окно project
щелчок (например) по "эта книга"
insert module
вставляете справа в большое поле текст макроса
Alt+F11
Alt+F8
All_to_last_page -> Выполнить
 
Ответ: в Excel создать сводную таблицу

Да, свод получается только по 2-м строкам. Остальное осталось нетронутым. Извините, что так долго молчала. Не было возможности.
 
Ответ: в Excel создать сводную таблицу

Макрос проверяет являются ли данные на листе непрерывными. Как только встречается пустая ячейка, сбор данных с текущего листа прерывается и происходит переход к следующему листу. И, как я говорил, считывание происходит лишь со столбцов A B C и D.
Если не сможете разобраться, выложите файл, в котором нужно собрать данные. Или пример такого файла. Я подскажу.
 
Статус
Закрыто для дальнейших ответов.