powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ошибка в формуле?
42 сообщений из 42, показаны все 2 страниц
Ошибка в формуле?
    #35677148
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
=СУММ(ЕСЛИ((base!A2:A8="01.01.08")*(base!B2:B8="1");base!L2:L8))
При внесении формулы в ячейку=#ЗНАЧ
Подскажите: в чем ошибка
Может можно как-то по другому Суммировать ячейки с несколькими критериями?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35677459
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva=СУММ(ЕСЛИ((base!A2:A8="01.01.08")*(base!B2:B8="1");base!L2:L8))
При внесении формулы в ячейку=#ЗНАЧ
Подскажите: в чем ошибка
Может можно как-то по другому Суммировать ячейки с несколькими критериями?=СУММПРОИЗВ(--(base!A2:A8=ДАТА(2008;1;1));(base!B2:B8="1");base!L2:L8)
=СУММПРОИЗВ((base!A2:A8=ДАТА(2008;1;1))*(base!B2:B8="1")*base!L2:L8)
=СУММПРОИЗВ(--(base!A2:A8=--"01.01.08");(base!B2:B8="1");base!L2:L8)
=СУММПРОИЗВ((base!A2:A8=--"01.01.08")*(base!B2:B8="1")*base!L2:L8)
=СУММ(ЕСЛИ((base!A2:A8=ДАТА(2008;1;1))*(base!B2:B8="1");base!L2:L8)) ввод CTRL+SHIFT+ENTER
=СУММ(ЕСЛИ((base!A2:A8=--"01.01.08")*(base!B2:B8="1");base!L2:L8)) ввод CTRL+SHIFT+ENTER
=СУММ(ЕСЛИ(base!A2:A8=ДАТА(2008;1;1);ЕСЛИ(base!B2:B8="1";base!L2:L8))) ввод CTRL+SHIFT+ENTER
=СУММ(ЕСЛИ(base!A2:A8=--"01.01.08";ЕСЛИ(base!B2:B8="1";base!L2:L8))) ввод CTRL+SHIFT+ENTER
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702150
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KL (XL),

=СУММ(ЕСЛИ((base!A4:A10=base!$A$2)*(base!B4:B10=1)*(base!G4:G10='0503130'!A15);base!L4:L10))
в параметрах base!G4:G10='0503130'!A15, '0503130'!A15=текстовое поле, значение которого= 01.
Не находит этотот текст, если число 1 , то находит. А мне нужен именно текст
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702384
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,
Вы бы выложили пример, а то может там еще какие особенности?

к тому же обилие вариантов,предложенное KL , это намек на раличные возможности конвертации данных..
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702412
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вложен файл
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702424
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А ещё можно вот так:
=СУММЕСЛИ(A2:B8;{"01.01.08";1};L2:L8)
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702451
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это при условии, что столбцы находятся рядом?
Как применить эту формулу к моему примеру?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702516
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Никак! Я поспешил ! :-) Забудь про неё :-)
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702532
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Помогите мне, пожайлуста. НЕ ЗНАЮ ЧТО И ДЕЛАТЬ
ВОПРОС ЖИЗНИ И СМЕРТИ
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702725
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
=СУММ(ЕСЛИ(base!A4:A10=base!A2;ЕСЛИ(base!B4:B10=1;ЕСЛИ(base!G4:G10='0503130'!A16;ЕСЛИ(base!H4:H10='0503130'!B16;base!L4:L10)))))

Только так, и не стоит мучиться!!!!!!!!!
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702894
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,
вот так?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35702952
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva=СУММ(ЕСЛИ(base!A4:A10=base!A2;ЕСЛИ(base!B4:B10=1;ЕСЛИ(base!G4:G10='0503130'!A16;ЕСЛИ(base!H4:H10='0503130'!B16;base!L4:L10)))))

Только так, и не стоит мучиться!!!!!!!!!
Думаю, мучатся таки стоит :) Хотя бы для того, чтобы разглядеть, что формула не работала из-за неправильно введенных ссылок на столбцы:

{=СУММ(ЕСЛИ(( base!A5:A11 =base!$A$2)*( base!B5:B11 =1)*( base!G5:G11 ='0503130'!A16)*( base!H4:H10 =B16); base!L5:L11 ))}

а вот так работает:

{=СУММ(ЕСЛИ(( base!A4:A10 =base!$A$2)*( base!B4:B10 =1)*( base!G4:G10 =A16)*( base!H4:H10 =B16); base!L4:L10 ))}
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35704589
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Продолжу тему

создание пользовательской функции:

Function balans_bud(d As Date, b As Integer, S As Integer, Ss As String, K As Integer)
Dim Diap_d As String
Dim Diap_b As String
Dim Diap_S As String
Dim Diap_Ss As String
Dim Diap_K As String
Dim diap_summa As String
If Ss = "00" Then
balans_bud={=СУММ(ЕСЛИ(Diap_d=d;ЕСЛИ(Diap_b=b;ЕСЛИ(Diap_S=S;ЕСЛИ(Dim Diap_Ss =Ss;diap_summa)))))}
КАК правильно написать массив?
Else

End If

End Function
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35704748
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,
если именно в этом виде, то формулу в кавычки и evaluate("формула")
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35704790
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_slan_,
если я напишу в "", то объявленные переменные не будут работать
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35704947
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,
значит надо прерывать кавычки, использовать имя и продолжать кавычки. типа так:

evaluate("..."& [имя] &"..")

ps квадратные скобочки заменяют написание evaluate(имя)

можно также использовать возможности range - range("имя")

правда это если там только именованные диапазоны..

если именованные формулы, то видимо чуть посложнее:

не просто [имя], а mid(2,names("имя").refersto,999)
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35704960
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
извините, был невнимателен, посчитал, что имена определены в иксель..

имена переменных VBA даже в скобки заключать не надо..
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35704966
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35705110
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может есть другое решение?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35705424
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,
конечно есть. НО чем те не устраивают. В плане к чему стремиться?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35705607
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-- some comments
Function balans_bud(d As Date, b As Integer, S As Integer, Ss As String, K As Integer, diap_summa As String)

Dim t As Integer
Dim j As Integer
j = 1
For t = 4 To 15 Step 1
If IsDate(Cells(t, 1).Value) = False Then 'проверка пустых ячеек
Else
If Cells(t, 1).Value < d Then 'проверка меньшей даты
If Cells(t, 2).Value = b Then 'проверка бюджета
If Cells(t, 7).Value = S Then 'проверка счета
If Cells(t, 8).Value = Ss Then 'проверка субсчета
balans_bud = balans_bud + Cells(t, 12).Value
Debug.Print balans_bud
End If
End If
End If
End If
End If
Next

End Function


Когда в ячейку вставляю функцию, определенную пользователем, то в расчет берутся ячейки только с этого листа, хотя есть ссылки на другой лист. Cells(t, 1).Value : как мне описать эти ячейки?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35705786
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-- some comments

Function balans_bud(d As Date, b As Integer, S As Integer, Ss As String, K As Integer, diap_summa As String)

Dim t As Integer
Dim j As Integer
j = 1
For t = 2 To 25 Step 1
If IsDate(Sheets("base").Cells(t, 1).Value) = False Then
Else
If Sheets("base").Cells(t, 1).Value < d Then
If Sheets("base").Cells(t, 2).Value = b Then
If Sheets("base").Cells(t, 7).Value = S Then
If Sheets("base").Cells(t, 8).Value = Ss Then
balans_bud = balans_bud + Sheets("base").Cells(t, 12).Value

End If
End If
End If
End If
End If
Next

End Function
Сделала так, но вот проблема:
Если меняю цифры в ячейках Sheets("base").Cells(t, 12).Value
,то формула не перещитовается
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35705866
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
два пути

1 объявить функцию volatile
2 указать зависимость от ячеек, передав их в параметрах..
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35707173
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пересчет не происходит:


Private Sub Worksheet_Change(ByVal Target As Range)
Application.Volatile
End Sub
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35707435
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,

не здесь, а там :
Function balans_bud(d As Date, b As Integer, S As Integer, Ss As String, K As Integer)
Application.Volatile
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35707469
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_slan_,

НЕ работает
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35707477
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ps но кое-что вы при этом теряете, советую почитать справку по этому вопросу
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35707479
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_slan_,
Если я снова в ячейке прописываю эту формулу, то изменения происходят, но у меня 1000 ячеек, неужели все переписывать?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35707495
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_slan_ps но кое-что вы при этом теряете, советую почитать справку по этому вопросу
Что теряю?
Я все справку проштудировала
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35708150
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,

Я не знаю, где вы выигрываете, вводя UDF для столь элементарной задачи, но могу точно сказать, где вы проигрываете:

1) многократная потеря в скорости пересчета (особенно в случае с циклом)

2) никому ненужная летучесть (если пойдете по пути Application.Volatile или Worksheet_Change)

3) невозможность исп-я формулы если у пользователя не включены макросы

Ранее предложенные вам формулы, прекрасно действуют на вашем листе, нужно просто немного больше внимания с вашей стороны, ну и попытаться понять как они работают ;-)
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35708720
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KL (XL),
Да, скорость падает резко.
Выложила файл, если делать исправления на листе base. то очень сильно тормозит
Как исправить?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35709211
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,

1) Файл не содержит написанной вами функции (UDF)
2) Параметры заданные для функции balans_bud(1,1,A15,B15,C15) в ячейках не вяжутся с опубликованным вами ранее кодом balans_bud(d As Date, b As Integer, S As Integer, Ss As String, K As Integer)
3) Непонятен смысл использования констант в первом и втором параметрах
4) У столбцов A, B, C листа 0503130 нет заголовков ни пояснений связи с базой

В целом лишь частично понятна связь параметров функции balans_bud с данными листов base и servis :-O
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35709758
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KL (XL),
1. На 0503130 и на base

Дебет/Кредит (Счет)=A
Дебет/Кредит (Субсчет)=В
ЭКР=С
2. Функция balans_bud выбирает числа, по объявленным параметрам с листа base и вставляет в ячейку.
3. Даты на листе servis будут меняться.
Я больше не знаю,что делать. Помогите мне пожайлуста.
И нужно ускорить время расчета при изменении данных на листе base
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35709786
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,

Вам же поправили Ваши формулы - они прекрасно работают при правильном применении

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

Вам надо почитать про формулы массива и относительные/абсолютные ссылки
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35709868
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Простите мою резкую перемену, но у меня будет 23 формы, по несколько листов каждая. Чтобы прописать в каждой форме , в каждой ячейке формулу недно очень много времени. А если где-то ошибусь?
Хотелось бы исправлять только в обном месте. И потом каждый пользователь должен будет заполнить только 1 лист-base. а данные разложатся по формам сами
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35710026
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,

1) см. пример
2) Что-то мне подсказывает, что данные ЭКР на листе 0503130 в столбце [C] не проставлены
3) так и не понял как вы собираетесь использовать даты с листа servis , особенно как вы их привяжете к столбцу [A] листа base
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35710051
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreeva,
существует такая вещь, как шаблон..
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35710961
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
KL (XL)tuandreeva,

1) см. пример
2) Что-то мне подсказывает, что данные ЭКР на листе 0503130 в столбце [C] не проставлены
3) так и не понял как вы собираетесь использовать даты с листа servis , особенно как вы их привяжете к столбцу [A] листа base

2) данные ЭКР на листе 0503130 в столбце [C] не должны быть проставлены, т.к. из листа base собираются только данные счета : пример 101 субсчет может быть любой и экр тоже любой, а где цифры проставлены, то только данные по проставленным цифрам
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35716548
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как я не крути, а все равно очень много времени занимает заполнение листа base.
Вкладываю пример. Прошу совета:
Как ускорить процесс заполнения листа base? Формулы будут на всех листах файла ссылаться на лист base
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35716550
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tuandreevaКак я не крути, а все равно очень много времени занимает заполнение листа base.
Вкладываю пример. Прошу совета:
Как ускорить процесс заполнения листа base? Формулы будут на всех листах файла ссылаться на лист base
Не вложила файл
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35717542
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попутный Вопрос:
какая функция в exel Такая же как like(1*)?
...
Рейтинг: 0 / 0
Ошибка в формуле?
    #35718932
tuandreeva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемые Профи, посмотрите мой вопрос
...
Рейтинг: 0 / 0
42 сообщений из 42, показаны все 2 страниц
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Ошибка в формуле?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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