|
выбор данных из строки
|
|||
---|---|---|---|
#18+
Добрый день. Подскажите, пожалуйста , как можно решить следующую задачу. Есть таблица, в которой перечень подчиненных и их начальников, таблица на несколько тысяч записей. Пример исходника во вложении. Необходимо выбрать 3 подчиненных с наибольшим количеством отработанных часов, и записать их коды и фамилии в одну ячейку через любой разделитель, например , ";". Проблема состоит не только в том, что у одного руководителя 1 подчиненный , а у другого 100, но и в том, что коды сотрудников разбиты на два столбца тем кому до 20 лет и больше 20 лет . Плюс ко всему идет объединение ячеек, я вообще не знаю с какой стороны к этой таблице подойти, поможет здесь Basic или нет, или может вообще можно обойтись формулами массивов. Пожалуйста, подскажите, как делать, или хотя бы где искать, может ссылки какие-нибудь есть ??? Спасибо, всем откликнувшимся ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2015, 20:12 |
|
выбор данных из строки
|
|||
---|---|---|---|
#18+
AnastassieПример исходника во вложении ... |
|||
:
Нравится:
Не нравится:
|
|||
07.07.2015, 20:43 |
|
выбор данных из строки
|
|||
---|---|---|---|
#18+
Странно, почему-то файл не подтянулся ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2015, 09:05 |
|
выбор данных из строки
|
|||
---|---|---|---|
#18+
Не претендую на оптимальное решение, но 1-е: оформить таблицу в массив, и привести его к требуемому виду, как-то так: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
На выходе получим двумерный массив в привычном виде (с заполненными элементами по объединенным ячейкам руководителей). Далее - сортировка по руководителю (коду руководителя) и количеству отработанных часов служащего. Следующих проход - выборка "победителей соревнования" и заполнение итоговой таблицы. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.07.2015, 11:00 |
|
выбор данных из строки
|
|||
---|---|---|---|
#18+
hclubmk, подскажите пожалуйста, а как вывести этот массив на том же листе. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.08.2015, 12:43 |
|
выбор данных из строки
|
|||
---|---|---|---|
#18+
hclubmkНе претендую на оптимальное решение, но 1-е: оформить таблицу в массив, и привести его к требуемому виду, как-то так: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29.
На выходе получим двумерный массив в привычном виде (с заполненными элементами по объединенным ячейкам руководителей). Далее - сортировка по руководителю (коду руководителя) и количеству отработанных часов служащего. Следующих проход - выборка "победителей соревнования" и заполнение итоговой таблицы. Не могу разобраться с выводом элементов полученного двухмерного массива(( Я понимаю, что для большинства это просто мелочи, но я никак не могу себя к нему причислить , помогите, пожалуйста. Все на что хватила моего скудного мозга это вот Range(Cells(1, 20), Cells(15, 21)).Select -- выбор области для вывода элементов Selection.Clear For i = LBound(EmployeesArray, 1) + 1 To UBound(EmployeesArray, 1) For J = LBound(EmployeesArray, 1) + 1 To UBound(EmployeesArray, 1) A(i, J) = LBound(EmployeesArray, 1) Next J Next i еще раз очень прошу помощи , я уже в отчаянии ... |
|||
:
Нравится:
Не нравится:
|
|||
03.08.2015, 20:28 |
|
выбор данных из строки
|
|||
---|---|---|---|
#18+
Как-то так: Код: vbnet 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
03.08.2015, 20:30 |
|
|
start [/forum/topic.php?fid=60&msg=39022512&tid=2155840]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
36ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 293ms |
total: | 420ms |
0 / 0 |