Ru-Board.club
← Вернуться в раздел «Программы»

» Excel FAQ

Автор: Geezer S
Дата сообщения: 27.09.2003 08:15
Sergeant

Типа так: если слагаемые находятся в диапазоне А1:А9, то =СУММЕСЛИ(A1:A9;">0";A1:A9). Суть в том, что здесь совпадают диапазон условий и диапазон суммирования. Интересно, что в Экселе это работает, а в OOo Calc - нет. Буду искать, в чем отличие.

All
Одна общая мысль: если в VBE вместо встроенных функций использовать функции рабочего листа - WorkSheetFunction.Функция - то прога будет работать быстрее (особенно это касается самострочных функций); при этом имя функции должно быть английское. Где взять? Добрые дяди положили в Оффис хороший файлик (у меня он лежит: c:\Program Files\Microsoft Office\Office10\1049\FUNCS.XLS) - весьма рекомендую ознакомиться.

Добавлено
Нашел, в чем разница: в Экселе при подстановке критерия (>0) Мастер функций автоматически берет их в кавычки, а Кальк'овский Автопилот - нет, надо ручками. На мой взгляд это более логично, т.к. если критерий - стринг, то его и надо писать в кавычках. А вообще, формирование строки условия в Экселе - это отдельная песня (см., например, мой предыдущий пост).

Еще добавлено

В связи с растущей популярностью пакета OpenOffice.org и большой схожестью Экселя и Калька, есть предложение поправить тему топика на Excel & OOo.Calc FAQ. Впрочем, я не настаиваю...
Автор: bredonosec
Дата сообщения: 28.09.2003 16:53
Geezer S

Цитата:
в связи с переходом на OpenOffice (там эти функции - SUM и COUNTIF).
-в английской версии оффиса -тож самое.

Цитата:
то вводим в В1 формулу =СУМ(А$1:A1) и тянем ее вниз
- В смысле "тянем"? Тянешь выделение массива при написании формулы? Или что?
Еще вопросик: поясни, плз, синтаксис формулы
Цитата:
=СУММЕСЛИ(A1:A9;">0";A1:A9).
-что здесь есть что? Диапазон сумирования, положим, понятно, а диапазон условий -что это? Я вижу здесь одно условие - ">0", и не врубаюсь в роль третьего элемента в скобках.



Добавлено

Цитата:
В связи с растущей популярностью пакета OpenOffice.org и большой схожестью Экселя и Калька, есть предложение поправить тему топика на Excel & OOo.Calc FAQ
-Имхо, не стоит. Поскольку некоторые функции разные, возможна путаница: чел спрашивает про функцию в одном пакете, отвечают ему про другой, при этом ни спрашивающий ни отвечающий не указывают, про какой конкретно пакет говорят, функция не срабатывает и начинается флейм на тему выяснения, что не так: или не то посоветовали, или не так поняли, или вообще говорят о разных пакетах.
Автор: Geezer S
Дата сообщения: 28.09.2003 17:53
bredonosec


Цитата:
- В смысле "тянем"? Тянешь выделение массива при написании формулы? Или что?

В смысле, ввел формулу в ячейку (закончил, например, Enter'ом), потом берешь мышкой за правый нижний угол ячейки и тянешь ее вниз, на сколько надо строк. Они при этом заполнятся твоей формулой, относительные ссылки будут в каждой строке разные, а абсолютные останутся неизменными. Можно еще выделить диапазон, активизировать ячейку с формулой (режим редактирования) и нажать "Ctrl-Enter". Фишка работает не только для формул, и даже на несвязных диапазонах.

Цитата:
Еще вопросик: поясни, плз, синтаксис формулы

Эта функция имеет три аргумента, которые Экселевский мастер функций обзывает так: Диапазон, Критерий и Диапазон суммирования. У нас: первый аргумент - диапазон, из которого будут выбираться номера строк, в которых ячейки соответствуют критерию, указанному вторым аргументом. Т.е. как бы сначала в диапазоне А1:А9 будут отобраны тем номера строк, в которых содержимое ячеек >0; затем из "Диапазона суммирования", указанного третьим аргументом, будут выбраны и просуммированы ячейки только с этими номерами строк (блин, прочитал, что написал, и задумался... "Ясно иль перегрузить? (с) Если нет, пиши в ПМ, попробую растолковать). В нашем примере просто первый и третий аргументы одинаковы, но могут быть и разными. Например, в одном столбце - емкость каждого винта в компах твоей конторы, во втором - их количество, тогда можно посчитать, сколько у тебя осталось винтов емкостью до 10 ГБ

По поводу ООо: ну, так я и не настаивал...
Автор: bredonosec
Дата сообщения: 29.09.2003 14:40
Geezer S

Цитата:
берешь мышкой за правый нижний угол ячейки
- сорри, забыл, голова садовая, совсем недавно читал (но пока не юзал)

Цитата:
Ясно иль перегрузить? (с)
-Спасибо, вроде дошло, (точно узнаю, когда на практике попытаюсь применить. )
Автор: Niktor
Дата сообщения: 03.10.2003 10:18
bredonosec

Цитата:
и не врубаюсь в роль третьего элемента в скобках

третий параметр может быть не только этот массив но и любой другой. Поясню, например надо складывать все значения из третьего ряда при условии, что условием суммации будут числа из первого столбца.Т.е. суммировать все значения из третьего соответствующие положительным числам в первом. Во как!!!
Автор: LordBrath
Дата сообщения: 13.10.2003 12:38
А "горячие клавиши" определенным действиям назначить можно? Ну например чтобы на панель инструментов постоянно не бегать чтобы поменять цвет ячейки.
Автор: cabron666
Дата сообщения: 20.10.2003 00:50
Ковырял сегодня excel 2000 но так и ненашел, то чего мне нужно
Предположим есть поля A1-A10 в A15 сделал автосумму, нужно сделать так, чтобы складывало все между A1 и A10 и вычитало то, что находится в A9, пытался использовать формат таблички, - (минус) то подставляется, только все складывается, а не вычитается, а если руками прописать например -10 тогда вычитается
Автор: MichaelII
Дата сообщения: 20.10.2003 05:09
Ищу решение в таком вопросе. Есть большая таблица. Некоторые строки заполнены другими цветами. Есть ли возможность как-то отсортировать таблицу по цвету ?
Автор: MetroidZ
Дата сообщения: 20.10.2003 07:03
LordBrath

Цитата:
А "горячие клавиши" определенным действиям назначить можно? Ну например чтобы на панель инструментов постоянно не бегать чтобы поменять цвет ячейки.

можно в макросах назначать горячие клавиши. Сначала только запиши макрос например рекордером.
cabron666

Цитата:
Предположим есть поля A1-A10 в A15 сделал автосумму, нужно сделать так, чтобы складывало все между A1 и A10 и вычитало то, что находится в A9

На то и есть автосумма чтоб складывать.
Это ведь просто - формулу поставь на A15 такую
СУММ(A1:A8)-A9+A10
Автор: vserd
Дата сообщения: 20.10.2003 10:33
в A15 пишем такую строку =СУММ(A1:A8;A10)-A9
Автор: cabron666
Дата сообщения: 20.10.2003 16:24
MetroidZ
vserd
Спасибо за ответы, проблема решена )
Автор: Tropin
Дата сообщения: 06.11.2003 16:25
Есть Range, например R:
Set R = Range("a3:a4")

нужно из R получить NewR, такой, чтоб NewR = Range("a:a")
Автор: Robert
Дата сообщения: 06.11.2003 19:45
Tropin

Set NewR = R.EntireColumn
Автор: grn
Дата сообщения: 19.11.2003 14:06
Большая проблема! Бухгалтерия работает с большими файлами 5,6 и более МБ из сети. Через 3-4 месяца файлы начинают открываться-закрываться по 5 минут. Железо и сеть не причем. Замена MS Office (MS Office 2000) не помогает. Лечится переустановкой системы на 3-4 месяца. Может кто чего знает?
Автор: mp3exchanger
Дата сообщения: 19.11.2003 23:27
Буду признателен, если ответите:
1. Как можно вставить в ячейку номер текущей страницы (НЕ в колонтитул)?
2. Какую можно создать маску формата ячейки, чтобы при вводе числа, к этому числу прикреплялся текст?
Автор: elcokloeckner
Дата сообщения: 20.11.2003 10:21
Подскажите, пожалуйста, как в Excel сделать выпадающий список.
Например, у нас есть 7 дней недели. Чтобы не писать каждый день название дня недели, я хочу выбирать его из списка.
Формат ячейки текстовой (не дата), ячейка не связана никакими ссылками.

Заранее спасибо.
Автор: BBBri
Дата сообщения: 21.11.2003 14:18
mp3exchanger

Цитата:
2. Какую можно создать маску формата ячейки, чтобы при вводе числа, к этому числу прикреплялся текст?


0 шт.
Или не конкретный текст?
Автор: mp3exchanger
Дата сообщения: 21.11.2003 14:53
BBBri
Да, это то, что мне нужно. Спасибо.
А если усложнить? Допустим, я ввожу в ячейку число, а к нему прикрепляется значение соседней ячейки.
Автор: BBBri
Дата сообщения: 21.11.2003 16:18
mp3exchanger

Цитата:
число, а к нему прикрепляется значение соседней ячейки.

тогда соединяй в третей. Это уже не формат
Автор: Robert
Дата сообщения: 21.11.2003 20:42
elcokloeckner


Цитата:
Подскажите, пожалуйста, как в Excel сделать выпадающий список.


Выделить все ячейки, где нужен такой список. Выполнить команду меню

Данные -> Проверка...

На вкладке Параметры введите Условие поверки:
Тип данных: - Список
Источник: - или список нужных значений (например, дней недели) через точку с запятой, или ссылка на диапазон ячеек рабочего листа, где этот список значений содержится.
При этом должен быть установлен переключатель Список допустимых значений

На двух других вкладках можно задать подсказку, которая будет появляться при выделении ячейки, и сообщение и действие при вводе ошибочных данных.

При этом справа от ячейки появляется стрелка списка, при нажатии на которую он и появляется. Любители использования клавиатуры могут вызвать этот список нажатием клавиш Alt + стрелка вниз

Более подробно о проверке вводимых значений можно почитать в справочной системе. Если и там что-то будет непонятно - можно задать конкретный вопрос здесь.
Автор: mp3exchanger
Дата сообщения: 21.11.2003 20:53
BBBri
Не, ну в третьей мне не надо, так я умею и не спрашивал бы.

Добавлено
Robert
Цитата:
Выделить все ячейки, где нужен такой список. Выполнить команду меню
Данные -> Проверка...
Интересная функция Excel, которой я не пользовался, но она мне понравилась.
Автор: Robert
Дата сообщения: 22.11.2003 11:45
mp3exchanger


Цитата:
ввожу в ячейку число, а к нему прикрепляется значение соседней ячейки


Это невозможно. Формат по определению оформляет вид ячейки, т.е. может задать цвет, добавить текст, т.е. константное значение. Значение же соседней ячейки может быть любым, и при его изменении должен меняться и формат. Это есть в условном форматировании, но там можно изменять только цвет, границу и фон ячейки, а не числовой формат. Так что не найдешь, и не ищи, это невозможно по определению.

Конечно, можно написать программу на VBA, но это по-моему уже слишком.
Автор: mp3exchanger
Дата сообщения: 22.11.2003 11:50
Robert

Цитата:
Так что не найдешь, и не ищи, это невозможно по определению.
Я, вообщем-то, так и думал, просто на всякий случай решил спросить.
Слушай, а как насчёт
Цитата:
1. Как можно вставить в ячейку номер текущей страницы (НЕ в колонтитул)?
Сколько не искал - не нахожу.
Автор: Robert
Дата сообщения: 22.11.2003 15:32
mp3exchanger

По-моему это тоже невозможно сделать стандартными средствами. Среди функций таких нет (как, например, поля автоматизации в Word). А кроме текста, чисел, даты и формул с функциями в ячейку и вставить то ничего нельзя. Так что фраза из справочной системы Excel:


Цитата:
Microsoft Excel печатает номера страниц только в том случае, когда номера страниц включены в колонтитулы


таки имеет место быть. Так что опять только программа на VBA.
Автор: isalex
Дата сообщения: 26.11.2003 08:05
Задача:
Есть книга-источник, которая находится в общедоступной папке. В ней шаблоны нескольких документов и несколько макросов.
Юзеры работают с файлами, котрые формируют отчеты на основе этих шаблонов.

Как можно из файла юзера запустить на выполнение макрос из источника, не открывая последний?
Аналогично требуется копировать одни ячейки из книги-источника, получать значения других, записывать новые значения в третьи.
И еще тоже самое для графических объектов.

Для удобства обзовем все так:
источник - ist.xls
файл юзера - user.xls
имя макроса - macros
Ячейки в источнике:
для копирования из источника юзеру - A1
источник значения для юзера - A2
для записи нового значения от юзера - A3
Картинка - Pict

Заранее благодарен всем за помощь
Автор: Pisun
Дата сообщения: 27.11.2003 12:29
товарисчи, как реализовать формулу вида
ActiveCell.FormulaR1C1 = "=SUM(R[(1-номер строки для активной ячейки)]C[1]:R[-1]C[1])"
?

Добавлено
все не нада уже знаю
Автор: Tropin
Дата сообщения: 03.12.2003 12:17
Снова вопрос по Range'ам...
Как мне k Range добавить еще один??? чтоб в цикле получить Range как набор из нужных мне ячеек
Автор: Robert
Дата сообщения: 03.12.2003 20:36
Tropin


Цитата:
Как мне k Range добавить еще один??? чтоб в цикле получить Range как набор из нужных мне ячеек


Для объединения диапазонов можно использовать метод Union(range1, range2, ...) объекта Application
Например:
Set bigRange = Application.Union(Range("Range1"), Range("Range2"))
Автор: saym101
Дата сообщения: 04.12.2003 13:08
Подскажите как в конкретной ячейке сделать автоматическое обновление валюты, к примеру евро.
И работать с ней как с обычным числом.
Автор: Tropin
Дата сообщения: 04.12.2003 15:59
Robert
Спасибо, то что надо...
saym101
Всмысле из интернета обновлять???

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Gentoo Linux


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.