Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Help!!! Excel 
:(
    Опции темы
mcoracle
Дата 25.3.2007, 21:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 19.3.2007
Где: Киев

Репутация: нет
Всего: нет



1.Создать таблицу следующей формы:

код спецыальности          фио абитуриента       количество балов           результат екзаменов

------------------------           --------------------------     ------------------------       -------------------------------

заполнить 1,2,3 колонки даными

2.сделать обчислении 4 ой колонки таким образом: Если количество балов >=15,то в 4 колонку заноситься"екзамен сдан",если <15 балов,то "екзамен провалено"

3.Обеспечить автоматизацию расчетов.

4.Обчислить общее,максимальное, среднее количество балов

5.Отфильтровать даные таблицы,использую фильтр с следующим условием: количество балов было не меньше 45 и не больше 70.

6.Сделать Диаграму



Пожалуйста, если кто может скажите хотя бы как 2-ое задание сделать.

PM MAIL   Вверх
kit_kat
Дата 26.3.2007, 02:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 25.2.2007
Где: Петербург

Репутация: нет
Всего: 6



=ЕСЛИ(ИЛИ(C1>15; C1=15);"Экзамен сдан";"Экзамен не сдан")

Вставить формулу, при условии что балл в ячейке C1

PM MAIL WWW   Вверх
mihanik
Дата 26.3.2007, 07:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


-=Белый Медведь=-
****


Профиль
Группа: Комодератор
Сообщений: 4054
Регистрация: 24.4.2006
Где: г. Тверь

Репутация: 5
Всего: 109



Это больше с использованием офиса.

Посему переношу...


--------------------
Программистами не рождаются, - это родовая травма...
user posted imageuser posted image
PM MAIL WWW ICQ   Вверх
Maker
Дата 12.4.2007, 18:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.11.2005

Репутация: нет
Всего: нет



Имеем: Workbook в котором содержатся 10 Worksheets. В ячейке (cell) B1 каждого их Worksheets есть цифра.

Задача: Выстроить столбиком А1:А10 в новом Worksheet содержание ячейки B1 с каждого листа, так, чтобы 
в ячейке A1 было содержание ячейки B1 из Sheet 1
в ячейке A2 было содержание ячейки B1 из Sheet 2
в ячейке A3 было содержание ячейки B1 из Sheet 3
и т.д.

На вид довольно простая задача, но выполтить ее мне не удалось.
PM MAIL   Вверх
Genyaa
Дата 12.4.2007, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Усердный
*


Профиль
Группа: Участник
Сообщений: 154
Регистрация: 25.9.2006
Где: Москва

Репутация: 4
Всего: 11



Если трехмерных ссылок недостаточно для решения (т.е. необходимо именно выбрать значения из каждого листа, а не вычислять какой-нибудь обобщенный результат из значений этих ячеек с помощью функций СУММ, СРЗНАЧ, СРЗНАЧА, СЧЁТ, СЧЁТЗ, МАКС, МАКСА, МИН, МИНА, ПРОИЗВЕД, СТАНДОТКЛОН, СТАНДОТКЛОНА, СТАНДОТКЛОНП, СТАНДОТКЛОНПА, ДИСП, ДИСПА, ДИСПР и ДИСПРА), то исключительно стандартных встроенных средств Excel будет недостаточно, ибо...

чтобы решить эту задачу через формулы необходимо, чтобы был известен полный список имен листов, значения ячеек которых необходимо получить в нужном листе. К сожалению ни одна функция Excel не дает возможности получить этот список или обратиться к листам по номерам (хотя по моему мнению, это было бы весьма полезно).

А чтобы решать подобного рода задачи я давно пользуюсь таким макросом:

Код

Sub ListOfSheets()
' программа составления списка выделенных листов
    Dim c As Range
    Set c = Application.InputBox(prompt:="Укажи, куда записать имена выделенных листов:", Type:=8)
    For i = 1 To ActiveWorkbook.Sheets.Count
        c.Cells(1, 1).Offset(i - 1, o).Value = Sheets(i).Name
    Next
End Sub


Перед запуском этого макроса нужно выделить те листы книги, список которых нужно получить в столбец под указываемой в процесе отработки процедуры.

В результате получим список имен нужных листов книги... например в ячейках A1:A10. Далее в B1 пишем такую формулу:

=двссыл(адрес(1;2;;;А1))

и копируем ее в B1:B10 - получится список значений ячейки B1 из десяти листов, имена которых мы получили в столбце А.

Добавлено через 11 минут и 47 секунд
А вот если использовать такую пользовательскую функцию, то доступ к листу по номеру будет очень удобен:

Код

Public Function OffsetSheet(r As Range, n As Long) As Range
'пользовательская функция вернет ссылку на область ячеек в листе, отстоящем на указанное число листов n от листа, где расположена область, указанная в параметре r
    Set OffsetSheet = Worksheets(r.Parent.Index + n).Range(r.Address)
End Function


Теперь с использованием этой функции решение Вашей задачи будет очень простым:
- в ячейку А1 пишем формулу =OffsetSheet($B$1;СТРОКА())
- копируем эту формулу в область A1:A10
- получили список значений ячеек B1 десяти следующих за текущим листов книги.
--------------------
Всякое решение плодит новые проблемы.
PM WWW   Вверх
Maker
Дата 12.4.2007, 23:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 61
Регистрация: 9.11.2005

Репутация: нет
Всего: нет



Цитата(Genyaa @ 12.4.2007,  21:24)
Если трехмерных ссылок недостаточно для решения (т.е. необходимо именно выбрать значения из каждого листа, а не вычислять какой-нибудь обобщенный результат из значений этих ячеек с помощью функций СУММ, СРЗНАЧ, СРЗНАЧА, СЧЁТ, СЧЁТЗ, МАКС, МАКСА, МИН, МИНА, ПРОИЗВЕД, СТАНДОТКЛОН, СТАНДОТКЛОНА, СТАНДОТКЛОНП, СТАНДОТКЛОНПА, ДИСП, ДИСПА, ДИСПР и ДИСПРА), то исключительно стандартных встроенных средств Excel будет недостаточно, ибо...

чтобы решить эту задачу через формулы необходимо, чтобы был известен полный список имен листов, значения ячеек которых необходимо получить в нужном листе. К сожалению ни одна функция Excel не дает возможности получить этот список или обратиться к листам по номерам (хотя по моему мнению, это было бы весьма полезно).

А чтобы решать подобного рода задачи я давно пользуюсь таким макросом:

Код

Sub ListOfSheets()
' программа составления списка выделенных листов
    Dim c As Range
    Set c = Application.InputBox(prompt:="Укажи, куда записать имена выделенных листов:", Type:=8)
    For i = 1 To ActiveWorkbook.Sheets.Count
        c.Cells(1, 1).Offset(i - 1, o).Value = Sheets(i).Name
    Next
End Sub


Перед запуском этого макроса нужно выделить те листы книги, список которых нужно получить в столбец под указываемой в процесе отработки процедуры.

В результате получим список имен нужных листов книги... например в ячейках A1:A10. Далее в B1 пишем такую формулу:

=двссыл(адрес(1;2;;;А1))

и копируем ее в B1:B10 - получится список значений ячейки B1 из десяти листов, имена которых мы получили в столбце А.

Добавлено @ 21:36
А вот если использовать такую пользовательскую функцию, то доступ к листу по номеру будет очень удобен:

Код

Public Function OffsetSheet(r As Range, n As Long) As Range
'пользовательская функция вернет ссылку на область ячеек в листе, отстоящем на указанное число листов n от листа, где расположена область, указанная в параметре r
    Set OffsetSheet = Worksheets(r.Parent.Index + n).Range(r.Address)
End Function


Теперь с использованием этой функции решение Вашей задачи будет очень простым:
- в ячейку А1 пишем формулу =OffsetSheet($B$1;СТРОКА())
- копируем эту формулу в область A1:A10
- получили список значений ячеек B1 десяти следующих за текущим листов книги.

Genyaa, ОГРОМНОЕ СПАСИБО ЗА ПОСТ!!!

Вывел с помощью Вашего макроса имена всех листов в колонку, и, как Вы указали,  с помощью =INDIRECT(ADDRESS(1;2;;;A1)) получил то, что нужно!!!

ВЫ ГЕНИЙ!!!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Работа с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Работа с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.0710 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.