Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / SumIf - VBA / 14 сообщений из 14, страница 1 из 1
28.12.2006, 14:17:59
    #34230538
GioCH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Пивет Всем и С Наступающим НОВЫМ ГОДОМ!!!!

Друзья, у меня след. Вопрос к вам - есть формула в лист1 а дааные в лист2 данные Proba, Crit, Data, когда открываетсья лист1 должна сработать формула (1) но к сожалению выдаётся сообщ. - Compile error: Invalid qualifer.

Cells(2, 1).Value = Application.WorksheetFunction.SumIf(Proba, Crit, data).Value

Подскажите где тут глюк
...
Рейтинг: 0 / 0
28.12.2006, 14:57:15
    #34230690
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
GioCHПивет Всем и С Наступающим НОВЫМ ГОДОМ!!!!

Друзья, у меня след. Вопрос к вам - есть формула в лист1 а дааные в лист2 данные Proba, Crit, Data, когда открываетсья лист1 должна сработать формула (1) но к сожалению выдаётся сообщ. - Compile error: Invalid qualifer.

Cells(2, 1).Value = Application.WorksheetFunction.SumIf(Proba, Crit, data).Value

Подскажите где тут глюк

Proba, Crit, data - это название столбцов? Или диапазонов?
второй аргумент функции SumIf д.б. условием
разверни Proba, Crit, data
...
Рейтинг: 0 / 0
28.12.2006, 15:04:58
    #34230716
lena_####
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
GioCH

Прежде всего я бы убрала Value после SumIf (компилятор ругается именно поэтому)
Код: plaintext
Cells( 2 ,  1 ).Value = Application.WorksheetFunction.SumIf(Proba, Crit, data)
Во вторых, функция SumIf хочет уж по крайней мере в качестве первого аргумента (в Вашем случае это Proba) получить объект Range. Если у Вас в переменной Proba храниться ссылка на соответствующий Range, то это здорово. Если же нет, то это не здорово. Если Proba – именованный диапазон, то правильней вместо Proba писать Range(“Proba”).
...
Рейтинг: 0 / 0
28.12.2006, 15:22:29
    #34230785
lena_####
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
GioCH

Это по поводу аргументов функции SumIf:

...
Рейтинг: 0 / 0
28.12.2006, 16:08:06
    #34230930
GioCH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Спасибо Друзья за отклики! (Особенно Лене!!!)
Proba, Crit, Data - Колонки (Они находятся на другом листе). Proba - где надо выбрать по Crit, а Data что сумыровать по Crit, по моему так?, а развернуть как Data, Crit, Proba?
Я попробую как Вы советовали. Это просто тест для работы чтобы автоматизировать выборку данных из больших таблиц.
...
Рейтинг: 0 / 0
28.12.2006, 16:23:39
    #34230990
Ser Artur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
...
Рейтинг: 0 / 0
28.12.2006, 17:38:53
    #34231211
GioCH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Ser Artur океан благодарности!!! это то что надо!!!
...
Рейтинг: 0 / 0
29.12.2006, 11:19:20
    #34232260
Ser Artur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Если хотите могу выслат тоже самое но с SUPRODUCT, которая более эфективна при помоши неё можно задат n-ое кол-во параметров
...
Рейтинг: 0 / 0
29.12.2006, 11:21:20
    #34232265
Ser Artur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Вместо выслат и задат нужно выслать, и задать "ь" не работает
...
Рейтинг: 0 / 0
29.12.2006, 15:28:52
    #34232960
GioCH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Ser Artur буду очень благодарен, мой Емаил - giorgich@Gmail.ru или Giorgich@pochta.ru

Спасибо и с наступающим новым годом!!!
...
Рейтинг: 0 / 0
30.12.2006, 11:15:51
    #34233648
Ser Artur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Mmounth - имя диапазона поиска месяца (Sheet2!A2:A65536)
mmm - имя месяца (Sheet1!A1)
tovar - имя диапазона поиска товара (Sheet2!B2:B35536)
RC[-2] - имя товара на листе (Sheet1!A2:A35536)
summa - имя диапазона суммы товара (Sheet2!C2:C65536)

ТО БИШЬ Имеем
на листе
Sheet2 вводим по колонке
А2:А65536 - месяцы прихода товара
B2:B35536 - наименования товаров
C2:C65536 - их суммы
на листе Sheet1 в яйчейке А1 вписываем месяц для которого нужно обобщить наши приходы
и жмём кнопку которая находится на листе Sheet1
код кнопки прилагается
Private Sub CommandButton1_Click()
Worksheets("Big Book").Range("F7:F20").Formula = "=SUMPRODUCT((Mmounth = mmm)*(tovar=RC[-2])*(summa))"
End Sub

P.S.
Я надеюс Вы знаете как присвоить имя яйчейке или диапазону яйчеек. Если(If) да то(Then) поясню для других, в смысле новичков. Активируем яйчейку или диапазон яйчеек входим Insert>Nae>Define> в поле Names in Workbook и присваиваем имя яйчейке или диапазону яйчеек
С наступающим Вас новым годом, к счястью 2007-ым
...
Рейтинг: 0 / 0
30.12.2006, 11:17:08
    #34233649
Ser Artur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Пардон вместо Worksheets("Big Book")
Worksheets("Sheet1")
...
Рейтинг: 0 / 0
30.12.2006, 11:20:25
    #34233651
Ser Artur
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
Опять 25
Worksheets("Big Book").Range("F7:F20")

Worksheets("Sheet1").Range("B2:B65536")
авторна листе Sheet1 в яйчейке А1 вписываем месяц для которого нужно обобщить наши приходы и жмём кнопку которая находится на листе Sheet1
а в яйчейках А2:A65536 того же листа вписываем товары
...
Рейтинг: 0 / 0
30.12.2006, 23:45:30
    #34233998
GioCH
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
SumIf - VBA
OK Ser Artur!
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / SumIf - VBA / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]