Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/как суммировать данные с всех вкладок Ексель по критерию - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
как суммировать данные с всех вкладок Ексель по критерию
alina23 Дата: Четверг, 20.02.2025, 22:54 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Пожалуйста помогите с такой проблемой. У меня есть файл с большим количеством вкладок, каждая вкладка это информация о конкретном сотруднике, его отработанном времени, а также информация на какой линии он работал. Мне нужно, чтобы на последней вкладке я могла увидеться сколько было отработано часов на каждой линии по дням. В моем случае это больше 150 вкладок, то есть сотрудников. Я пробовала использовать трехмерную ссылку с функцией СУММЕСЛИ, но потом вычитала, что так не получиться. В целом информация есть на эту тему и ее решение, но к сожалению я нуждаюсь в более упрошенном объяснении, поскольку я новичок в Екселе
К сообщению приложен файл: rabotniki.xlsx (32.1 Kb)
 
Ответить
СообщениеПожалуйста помогите с такой проблемой. У меня есть файл с большим количеством вкладок, каждая вкладка это информация о конкретном сотруднике, его отработанном времени, а также информация на какой линии он работал. Мне нужно, чтобы на последней вкладке я могла увидеться сколько было отработано часов на каждой линии по дням. В моем случае это больше 150 вкладок, то есть сотрудников. Я пробовала использовать трехмерную ссылку с функцией СУММЕСЛИ, но потом вычитала, что так не получиться. В целом информация есть на эту тему и ее решение, но к сожалению я нуждаюсь в более упрошенном объяснении, поскольку я новичок в Екселе

Автор - alina23
Дата добавления - 20.02.2025 в 22:54
gling Дата: Пятница, 21.02.2025, 00:18 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2631
Репутация: 724 ±
Замечаний: 0% ±

2010
И вы здравствуйте alina23,
Вариант в файле. Разные формулы раскрашены по разному. Одна из них вводится как формула массива.
К сообщению приложен файл: 4091740.xlsx (32.8 Kb)


ЯД-41001506838083
 
Ответить
СообщениеИ вы здравствуйте alina23,
Вариант в файле. Разные формулы раскрашены по разному. Одна из них вводится как формула массива.

Автор - gling
Дата добавления - 21.02.2025 в 00:18
alina23 Дата: Суббота, 22.02.2025, 18:29 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

gling, Здравствуйте. Это просто потрясающе. Огромное вам спасибо. Подскажите пожалуйста еще момент, как создать список из вкладок, если их больше 150 штук и они имеют название сотрудников, а также, если создаётся новая вкладка с новым сотрудником, нужно информацию постоянно обновлять? Я смотрела видео, что в Екселе даже кнопка есть, которая создает такой список, но я ее не нашла :help:


Сообщение отредактировал alina23 - Суббота, 22.02.2025, 18:32
 
Ответить
Сообщениеgling, Здравствуйте. Это просто потрясающе. Огромное вам спасибо. Подскажите пожалуйста еще момент, как создать список из вкладок, если их больше 150 штук и они имеют название сотрудников, а также, если создаётся новая вкладка с новым сотрудником, нужно информацию постоянно обновлять? Я смотрела видео, что в Екселе даже кнопка есть, которая создает такой список, но я ее не нашла :help:

Автор - alina23
Дата добавления - 22.02.2025 в 18:29
alina23 Дата: Суббота, 22.02.2025, 18:34 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

gling, А также у меня вопрос, почему одни формулы имеют фигурные скобки, а другие нет?
 
Ответить
Сообщениеgling, А также у меня вопрос, почему одни формулы имеют фигурные скобки, а другие нет?

Автор - alina23
Дата добавления - 22.02.2025 в 18:34
gling Дата: Суббота, 22.02.2025, 19:24 | Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2631
Репутация: 724 ±
Замечаний: 0% ±

2010
формулы имеют фигурные скобки
Это формулы массива, они вводятся одновременным нажатием трех кнопок Shift+Ctrl+Enter. Поищите в интернете про формулы массива, ознакомьтесь.
Есть возможность макрофункцией формировать список, но при этом нужно чтобы была разрешена работа макросов. А если разрешена работа макросов, тогда и макросом можно формировать и исключить из списка не нужные, из которых не будет собираться информация. А если уж и макросы будут в книге, тогда и собирать данные со всех листов тоже можно макросом. Но это другая тема, не формульная.


ЯД-41001506838083

Сообщение отредактировал gling - Суббота, 22.02.2025, 19:40
 
Ответить
Сообщение
формулы имеют фигурные скобки
Это формулы массива, они вводятся одновременным нажатием трех кнопок Shift+Ctrl+Enter. Поищите в интернете про формулы массива, ознакомьтесь.
Есть возможность макрофункцией формировать список, но при этом нужно чтобы была разрешена работа макросов. А если разрешена работа макросов, тогда и макросом можно формировать и исключить из списка не нужные, из которых не будет собираться информация. А если уж и макросы будут в книге, тогда и собирать данные со всех листов тоже можно макросом. Но это другая тема, не формульная.

Автор - gling
Дата добавления - 22.02.2025 в 19:24
alina23 Дата: Суббота, 22.02.2025, 20:05 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

gling, Спасибо, я нашла коды макросов, вот один из них
Private Sub ListSheets()
Dim index As Integer = 0

Dim NamedRange1 As Microsoft.Office.Tools.Excel.NamedRange = _
Globals.Sheet1.Controls.AddNamedRange( _
Globals.Sheet1.Range("A1"), "NamedRange1")

For Each displayWorksheet As Excel.Worksheet In Globals.ThisWorkbook.Worksheets
NamedRange1.Offset(index, 0).Value2 = displayWorksheet.Name
index += 1
Next displayWorksheet
End Sub

Однако, когда я его вставляю, закрываю MVB, ничего не происходит.
PS. Спасибо, что так быстро ответили
 
Ответить
Сообщениеgling, Спасибо, я нашла коды макросов, вот один из них
Private Sub ListSheets()
Dim index As Integer = 0

Dim NamedRange1 As Microsoft.Office.Tools.Excel.NamedRange = _
Globals.Sheet1.Controls.AddNamedRange( _
Globals.Sheet1.Range("A1"), "NamedRange1")

For Each displayWorksheet As Excel.Worksheet In Globals.ThisWorkbook.Worksheets
NamedRange1.Offset(index, 0).Value2 = displayWorksheet.Name
index += 1
Next displayWorksheet
End Sub

Однако, когда я его вставляю, закрываю MVB, ничего не происходит.
PS. Спасибо, что так быстро ответили

Автор - alina23
Дата добавления - 22.02.2025 в 20:05
Hugo Дата: Суббота, 22.02.2025, 21:49 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3803
Репутация: 810 ±
Замечаний: 0% ±

365
alina23, этот код не для Экселя, не VBA.
Вот как может выглядеть на VBA:
[vba]
Код

Sub SpisokListov()
Dim sh, i&
Application.ScreenUpdating = False
For Each sh In Worksheets
    i = i + 1
    Cells(i, 1) = sh.Name
Next
Application.ScreenUpdating = True
End Sub
[/vba]
Создать новый лист, его активировать и выполнить этот макрос из стандартного модуля, или модуля этого листа.
Но с этими именами листов ещё есть вопрос - может получиться что не сможете названиями сотрудников назвать листы, и это придётся учитывать в реализации формулами....
Я вообще посоветую изменить всю эту конструкцию, сделать наоборот - все данные писать в одну общую базу, а если нужно показать/вывести данные например как в файле по сотруднику 2 - это делается легко простым макросом, или формулами.
И сразу избавитесь от многих проблем, и кроме того получите бонусом возможность легко проводить аналитику, можно визуально анализировать всю активность или что там может заинтересовать управленцев.
Или как другой вариант - один раз в день (или по запросу, или когда занесены новые данные) макросом из этих листов обновлять данные в общей базе.
А уже сводный лист строить любым способом по это базе.


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD


Сообщение отредактировал Hugo - Суббота, 22.02.2025, 22:39
 
Ответить
Сообщениеalina23, этот код не для Экселя, не VBA.
Вот как может выглядеть на VBA:
[vba]
Код

Sub SpisokListov()
Dim sh, i&
Application.ScreenUpdating = False
For Each sh In Worksheets
    i = i + 1
    Cells(i, 1) = sh.Name
Next
Application.ScreenUpdating = True
End Sub
[/vba]
Создать новый лист, его активировать и выполнить этот макрос из стандартного модуля, или модуля этого листа.
Но с этими именами листов ещё есть вопрос - может получиться что не сможете названиями сотрудников назвать листы, и это придётся учитывать в реализации формулами....
Я вообще посоветую изменить всю эту конструкцию, сделать наоборот - все данные писать в одну общую базу, а если нужно показать/вывести данные например как в файле по сотруднику 2 - это делается легко простым макросом, или формулами.
И сразу избавитесь от многих проблем, и кроме того получите бонусом возможность легко проводить аналитику, можно визуально анализировать всю активность или что там может заинтересовать управленцев.
Или как другой вариант - один раз в день (или по запросу, или когда занесены новые данные) макросом из этих листов обновлять данные в общей базе.
А уже сводный лист строить любым способом по это базе.

Автор - Hugo
Дата добавления - 22.02.2025 в 21:49
gling Дата: Суббота, 22.02.2025, 22:37 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2631
Репутация: 724 ±
Замечаний: 0% ±

2010
Если захотите продолжить обсуждать по созданию листов, создайте новую тему. В файле при активации листа "по линиям" формируется список листов в столбце А, в список не включаются листы "бланк" и "по линиям". Возможно в рабочем файле эти названия другие, тогда подправите в файле.
К сообщению приложен файл: rabotniki.xlsm (41.7 Kb)


ЯД-41001506838083

Сообщение отредактировал gling - Суббота, 22.02.2025, 22:45
 
Ответить
СообщениеЕсли захотите продолжить обсуждать по созданию листов, создайте новую тему. В файле при активации листа "по линиям" формируется список листов в столбце А, в список не включаются листы "бланк" и "по линиям". Возможно в рабочем файле эти названия другие, тогда подправите в файле.

Автор - gling
Дата добавления - 22.02.2025 в 22:37
alina23 Дата: Воскресенье, 23.02.2025, 22:00 | Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

gling, Большое спасибо за ответ. К сожалению мне выдает ошибку, я зашла в параметры, как в рекомендациях, однако это ничего не поменяло и предупреждение все ровно высвечивается. Когда я попробовала сама создать тот макрос из кода, который Вы написали выше, то ничего не происходит, когда я возвращаюсь на рабочий лист. Но возможно я просто что-то не то делаю. Я заметила, что люди так часто спрашивают о создании списка имен листов, что почему действительно не создать для этого кнопку, все как-то сложно для обычных пользователей, как я. %)
Мне не совсем понятно данное предложение "Создать новый лист, его активировать". как мы активирует новый лист?
К сообщению приложен файл: 1226046.png (36.2 Kb)


Сообщение отредактировал alina23 - Воскресенье, 23.02.2025, 22:12
 
Ответить
Сообщениеgling, Большое спасибо за ответ. К сожалению мне выдает ошибку, я зашла в параметры, как в рекомендациях, однако это ничего не поменяло и предупреждение все ровно высвечивается. Когда я попробовала сама создать тот макрос из кода, который Вы написали выше, то ничего не происходит, когда я возвращаюсь на рабочий лист. Но возможно я просто что-то не то делаю. Я заметила, что люди так часто спрашивают о создании списка имен листов, что почему действительно не создать для этого кнопку, все как-то сложно для обычных пользователей, как я. %)
Мне не совсем понятно данное предложение "Создать новый лист, его активировать". как мы активирует новый лист?

Автор - alina23
Дата добавления - 23.02.2025 в 22:00
gling Дата: Воскресенье, 23.02.2025, 22:15 | Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2631
Репутация: 724 ±
Замечаний: 0% ±

2010
мне выдает ошибку
После открытия дополнительных сведений, там нет вопроса про разрешение макроса, Если есть, то разрешите. В параметрах макросов включите все макросы.
ПКМ по ярлычку листа -- Просмотреть код, и скопируй что там написано в свой файл На лист "по линиям". Или скопируйте из этого сообщения и вставьте в модуль листа "по линиям"[vba]
Код
Private Sub Worksheet_Activate()
    ListiFIO
End Sub
[/vba]


ЯД-41001506838083
 
Ответить
Сообщение
мне выдает ошибку
После открытия дополнительных сведений, там нет вопроса про разрешение макроса, Если есть, то разрешите. В параметрах макросов включите все макросы.
ПКМ по ярлычку листа -- Просмотреть код, и скопируй что там написано в свой файл На лист "по линиям". Или скопируйте из этого сообщения и вставьте в модуль листа "по линиям"[vba]
Код
Private Sub Worksheet_Activate()
    ListiFIO
End Sub
[/vba]

Автор - gling
Дата добавления - 23.02.2025 в 22:15
Hugo Дата: Воскресенье, 23.02.2025, 22:30 | Сообщение № 11
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3803
Репутация: 810 ±
Замечаний: 0% ±

365
не не совсем понятно данное предложение "Создать новый лист, его активировать". как мы активирует новый лист?

Ну просто не уходить с этого нового созданного листа.
В принципе можно и не создавать новый лист, можно просто перейти на любой лист, где не жалко затереть этим генерируемым списком начало первого столбца.
А это красную надпись при открытии скачанных из сети файлов можно убрать в свойствах ФАЙЛА - там внизу справа всё увидите.



webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD


Сообщение отредактировал Hugo - Воскресенье, 23.02.2025, 22:32
 
Ответить
Сообщение
не не совсем понятно данное предложение "Создать новый лист, его активировать". как мы активирует новый лист?

Ну просто не уходить с этого нового созданного листа.
В принципе можно и не создавать новый лист, можно просто перейти на любой лист, где не жалко затереть этим генерируемым списком начало первого столбца.
А это красную надпись при открытии скачанных из сети файлов можно убрать в свойствах ФАЙЛА - там внизу справа всё увидите.


Автор - Hugo
Дата добавления - 23.02.2025 в 22:30
alina23 Дата: Суббота, 08.03.2025, 19:42 | Сообщение № 12
Группа: Пользователи
Ранг: Прохожий
Сообщений: 8
Репутация: 0 ±
Замечаний: 0% ±

Спасибо большое за помощь!! на работе все внедрила и все получилось! Но теперь все думают, что я гений Ексель на фоне тех сотрудников, которые там работают в офисе. Так что я думаю, что я не раз сюда вернусь за помощью :kiss:
 
Ответить
СообщениеСпасибо большое за помощь!! на работе все внедрила и все получилось! Но теперь все думают, что я гений Ексель на фоне тех сотрудников, которые там работают в офисе. Так что я думаю, что я не раз сюда вернусь за помощью :kiss:

Автор - alina23
Дата добавления - 08.03.2025 в 19:42
Mark1976 Дата: Суббота, 08.03.2025, 20:39 | Сообщение № 13
Группа: Проверенные
Ранг: Ветеран
Сообщений: 785
Репутация: 3 ±
Замечаний: 0% ±

Excel 2010, 2013
alina23, мне лично на этом форуме много кто помог. Использую в работе. Огромное спасибо всем кто помогает здесь. Всех милых дам с 8 Марта !!!
 
Ответить
Сообщениеalina23, мне лично на этом форуме много кто помог. Использую в работе. Огромное спасибо всем кто помогает здесь. Всех милых дам с 8 Марта !!!

Автор - Mark1976
Дата добавления - 08.03.2025 в 20:39
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!