За последние 24 часа нас посетили 17478 программистов и 1726 роботов. Сейчас ищут 960 программистов ...

Есть кто-нибудь, кто в excel разбирается?

Тема в разделе "Прочее", создана пользователем karakh, 28 окт 2009.

  1. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Есть две экселевские таблицы в двух табах одного xls файла, одинаковые по структуре. В каждой есть поля - "команда" и "набранные очки". В первой таблице - первый тур, во второй - второй тур.

    Надо в отдельное поле в первой таблице (все равно в какой на самом деле) для каждой команды получить сумму очков по двум турам.

    Таблицы отсортированы по набранным очкам, поэтому порядок следования команд может быть (и будет) разным.

    Вопрос: как это сделать средствами экселя. В идеале формулами, если формулами не получится ну совсем никак, то в какую сторону курить VBA?
     
  2. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Да формулами.

    Тупо пиши =SUM(Лист1!A1:A2) - там даже мышкой можешь указать нужные ячейки
    Под рукой его сейчас нет, но помнится мне можно задать даже диапазоны с разных листов одновременно.

    Если не сложится, то суммируешь на каждом листе как обычно =SUM(A1:A3);

    а в нужном тебе месте =Лист1!X1 + Лист2!X1


    Upd1:
    Мгм. Не заметил условия, что команды прыгать будут....
    Хреновасто. Тогда VBA поколупай. Там ничего сложного. минут на 5-10 работы.
     
  3. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Я специально для этого и сказал, что команды сортируются по очкам. По занятому месту. Если команда получает еще одно очко, она сдвигается в таблице вверх. Цель в том, чтобы сделать таблицу без очков, чтобы при вводе результатов расчет шел автоматически.

    Или я чего-то не понял?
     
  4. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    что-то вроде

    update list1
    set full_result = list1.result+
    (select result from list2 where list1.name=list2.name)
    where list1.name=list2.name

    Но эксель sql не понимает
     
  5. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Ммм. Слишком давно дело было, больше 7ми лет назад.

    В общем. две исходные таблицы никуда прыгать не должны. - Команды стоят на своих местах. По-алфавиту или вразнобой - не важно.

    А вот рассчетные таблицы (делаешь на отдельном листе)...
    Можно посмотреть в Excel, что там у него есть в возможностях с сортировкой.
    Т.е. отсортированной должна быть только конечная таблица.

    Если ничего не найдешь, то пиши расчет на VBA и не мучайся.
     
  6. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Ты не поверишь, но насколько мне помнится... он таки понимает его. Поищи в гугле.
     
  7. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    знать бы еще VBA...

    Есть там конструкция, позволяющая находить номер строки по значению одной из ячеек?
     
  8. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Поищу. Если понимает, то будет мне счастье
     
  9. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Зачем тебе номер строки?

    У тебя все значения никуда не прыгают. Ты их читаешь в массив (названия, позицию, в/п/н, очки)
    Сортируешь его. И выводишь на отдельный лист.
     
  10. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    ODBC вроде как понимал Excel.
     
  11. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Если б жизнь была проста...

    Есть страница на экселе. С автосортировкой по очкам, будь она неладна. В ней лежат результаты по первому туру.
    Есть скопированная с первой вторая страница. Тоже, ясное дело, с автосортировкой. В ней будут результаты по второму.

    Они уже есть, они данность, и команд в них по паре сотен. Потому что после тура в порядке занятых мест объявляются победители тура. То есть место занятое в туре тоже значимо.

    А сортировка автоматическая в смысле проставлена заранее, потому что пользоваться этими таблицами буду не я.
     
  12. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Я тебе о другом. Список команд - это одно.
    А их места и конечный список тура - это другое.
    Но хочется вам с автосортировкой. Ну и хрен с ними.

    Бери все строки в массив и верти как хочешь и вокруг чего хочешь.
    Результат выводи в отдельную страницу.
     
  13. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Да, так и придется видимо. А как хочется формулами...
     
  14. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Ну так посмотри и формулы...
    Там 300 с чем-то функций встроенных. Есть даже транспонирование матрицы одним движением.... в смысле одной формулой.
     
  15. iliavlad

    iliavlad Активный пользователь

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    посмотри в справке Excel функцию ПОИСКПОЗ и внизу ссылку на раздел "Поиск значений в списке данных". Может тебе это поможет.
     
  16. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    ПОИСКПОЗ... как это по английски-то? FINDPOS? SEARCHPOS? буду искать :)
     
  17. iliavlad

    iliavlad Активный пользователь

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    хз. находится в категории "ссылки и массивы". вот уж что, а эксель с вордом можно и русские поставить)
     
  18. karakh

    karakh Активный пользователь

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    Нельзя. То есть можно конечно, но ради одной задачки переставлять офис?
    Кстати, мысль которую я раньше не думал. Формула, написанная в русском экселе как отработает в англицком? Каким-то образом переведется или будет матюкаться?
     
  19. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Отработает.

    В листе хранится не сама формула, а ее ключевое слово.
     
  20. kostyl

    kostyl Guest

    блин захожу в "Помойку" и сразу хочется сказать "Задрали вы со своим екселем"....
     
  21. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    kostyl
    кто там тебя Экселем дерет? :)
     
  22. kostyl

    kostyl Guest

    Simpliest
    думаю новые ответы не этой теме и захочу, а это ответы в этой теме... пипец...
     
  23. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
  24. iliavlad

    iliavlad Активный пользователь

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    наверное привык я к русскому офису. да и переставлять не надо - есть такая штука как mui.