Excel ограничение длины формулы

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

вопрос собственно в теме… возможно ли как нибудь увеличить в ячейке длину формулы…?!  а то длина в 8192 символа не помешается…  (8192 это где то 2.5 страницы в ворд , а нужно что бы 7 было )  

Изменено: БМВ06.02.2023 20:04:17

 

Тимофеев

Пользователь

Сообщений: 1495
Регистрация: 01.09.2020

делите на 3 формулы по 8192 и четвертой собирайте итог

Изменено: Тимофеев06.02.2023 14:03:00

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

#3

06.02.2023 14:07:26

Цитата
George L написал:
возможно ли как нибудь увеличить в ячейке длину формулы

например, так: добавить апостроф и посчитать функцией ДЛСТР()

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#4

06.02.2023 14:09:12

Цитата
написал:
делите на 3 формулы по 8192 и четвертой собирайте итог

вопрос то не про три -четыре ячейки, а про одну.
вообще зачем ограничение сделали такое (

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#5

06.02.2023 14:11:28

Цитата
написал:
например, так: добавить апостроф и посчитать функцией ДЛСТР()

спасибо, но длина текста в ячейке не актуальна…

просто формула очень длинная получается  

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

#6

06.02.2023 14:19:44

Цитата
George L написал:
длина текста в ячейке не актуальна..

А что актуально? Мой ответ конкретно на Ваш вопрос в названии темы.
Если Вас интересует, каким образом можно обойти ограничения на длину формулы в ячейке, то и название нужно формулировать соответственно.

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#7

06.02.2023 14:22:29

Цитата
написал:
А что актуально? Мой ответ конкретно на Ваш вопрос в названии темы.Если Вас интересует, каким образом можно обойти ограничения на длину формулы в ячейке, то и название нужно формулировать соответственно.

поэтому в Теме и стоят многоточия, а в самом первом посте раскрывается тема детальнее, по аналогии с экселем и темой, тогда бы все вместо первого сообщения и писали сам вопрос именно в «теме»..

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

#8

06.02.2023 14:24:21

Цитата
George L написал:
вообще зачем ограничение сделали такое (

сделали для того чтоб не появлялось таких формул.
на форуме масса тем в которых монстры превращались в достаточно короткие формулы.

По вопросам из тем форума, личку не читаю.

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

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

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#10

06.02.2023 14:36:04

Цитата
написал:
сделали для того чтоб не появлялось таких формул.на форуме масса тем в которых монстры превращались в достаточно короткие формулы.

тоже логично.
хотя по факту вот
СЧЁТЕСЛИМН (три условия) выдает значение и суммирует с подобными тремя условиями, только где «Субъект ознакомлен», и далее меняется только переменная А16 на другие поля (с другими названиями документов)
ну допустим текст «Субъект ознакомлен» и «Субъект НЕ ознакомился» я вставлю в ячейку и потом к ним буду обращаться.. это уменьшит длину где то на 35 символов в каждом цикле..

=(СЧЁТЕСЛИМН(‘[Копия
Процессуальные_документы_для_ознакомления_.xlsx]data’!$I:$I;D14;'[Копия
Процессуальные_документы_для_ознакомления_.xlsx]data’!$J:$J;db!A16;'[Копия
Процессуальные_документы_для_ознакомления_.xlsx]data’!$D:$D;»Субъект
НЕ ознакомился»))+(СЧЁТЕСЛИМН(‘[Копия
Процессуальные_документы_для_ознакомления_.xlsx]data’!$I:$I;D14;'[Копия
Процессуальные_документы_для_ознакомления_.xlsx]data’!$J:$J;db!A16;'[Копия
Процессуальные_документы_для_ознакомления_.xlsx]data’!$D:$D;»Субъект
ознакомлен»))

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#11

06.02.2023 14:44:31

Цитата
написал:
George L,  я Вам про название темы, а Вы про стартовое сообщение.
Впредь формулируйте так, чтобы уже из названия темы была понятна  задача . А по Вашей логике получается, что задача скрывается в этих трёх точках.

Уважаемый Юрий, ваше сообщение не относится к теме обсуждения в рамках проблематики excel, и это ведь немного лишнее будет обсуждение, тем более если вы отвечая на вопрос использовали кнопку «цитировать» и выделили именно вопрос не из темы, а именно из первого поста, что собственно говорит о том, что Вы прочли именно вопрос, а не тему.

А согласно моей логике я же и написал, что если опираться на озвученное Вами, ТОЛЬКО на текст в «Теме» тогда в первом посте вообще можно не писать ничего…

Ps. я благодарен Вам за желание помочь
Ps2. касательно «не актуальности» это было как раз о ДЛСТР  

Изменено: George L06.02.2023 14:51:00

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

George L,  не вставляйте скопированное — прикрепляйте рисунок файлом. Правда,  в рисунках формулы не работают.

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#13

06.02.2023 14:53:31

Цитата
написал:
George L ,  не вставляйте скопированное — прикрепляйте рисунок файлом. Правда,  в рисунках формулы не работают.

Юрий посмотрите чуть выше, я изменил уже сразу , когда рисунок вставился не корректно, а если говорить все таки про excel, а не про «цитирование» то, пример формулы приведен еще чуть выше и если обратите внимание не рисунком… :)

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

#14

06.02.2023 14:54:18

Цитата
George L написал:
Уважаемый Юрий, ваше сообщение не относится к теме обсуждения в рамках проблематики excel,

Замечания модераторов по оформлению, по названию, соблюдению правил относятся к ЛЮБОЙ теме. И Вы глубоко ошибаетесь, если считаете, что в теме должны быть только ответы на Ваш вопрос.
И давайте прекратим препираться, пока медведь своей лапой не закрыл тему.

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#15

06.02.2023 15:01:02

:idea: Юрий М,

Цитата
написал:
хотя по факту вот СЧЁТЕСЛИМН (три условия) выдает значение и суммирует с подобными тремя условиями, только где «Субъект ознакомлен», и далее меняется только переменная А16 на другие поля (с другими названиями документов) ну допустим текст «Субъект ознакомлен» и «Субъект НЕ ознакомился» я вставлю в ячейку и потом к ним буду обращаться.. это уменьшит длину где то на 35 символов в каждом цикле..=(СЧЁТЕСЛИМН(‘[КопияПроцессуальные_документы_для_ознакомления_.xlsx]data’!$I:$I;D14;'[КопияПроцессуальные_документы_для_ознакомления_.xlsx]data’!$J:$J;db!A16;'[КопияПроцессуальные_документы_для_ознакомления_.xlsx]data’!$D:$D;»Субъект НЕ ознакомился»))+(СЧЁТЕСЛИМН(‘[КопияПроцессуальные_документы_для_ознакомления_.xlsx]data’!$I:$I;D14;'[КопияПроцессуальные_документы_для_ознакомления_.xlsx]data’!$J:$J;db!A16;'[КопияПроцессуальные_документы_для_ознакомления_.xlsx]data’!$D:$D;»Субъект ознакомлен»))
 

_Boroda_

Пользователь

Сообщений: 1496
Регистрация: 27.07.2013

Контакты см. в профиле

Вы пример файла приложите наконец или одно из двух?

Скажи мне, кудесник, любимец ба’гов…

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#17

06.02.2023 16:03:21

Цитата
написал:
Вы пример файла приложите наконец или одно из двух?

Прикрепленные файлы

  • пример1.xlsx (11.07 КБ)

 

Ігор Гончаренко

Пользователь

Сообщений: 13746
Регистрация: 01.01.1970

#18

06.02.2023 16:38:59

Код
=СУММПРОИЗВ(($F$3:$F$11=K3)*(СЧЁТЕСЛИ($L$1:$L$2;$E$3:$E$11)>0)*(СЧЁТЕСЛИ($N$3:$N$6;$G$3:$G$11)>0))

Прикрепленные файлы

  • пример1 (5).xlsx (10.99 КБ)

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

memo

Пользователь

Сообщений: 1422
Регистрация: 28.02.2018

Excel 2013/2016

#19

06.02.2023 17:28:53

Для разнообразия. Формула массива.

Код
=COUNT(SIGN(MATCH(IF(($F$3:$F$11=K3)*(MATCH($E$3:$E$11;$L$1:$L$2;));$G$3:$G$11);$N$3:$N$6;)))

З.Ы. пара скобок лишняя, можете убрать сами)

Прикрепленные файлы

  • пример1 (5).xlsx (10.45 КБ)

Изменено: memo06.02.2023 17:30:32

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

#21

06.02.2023 19:54:31

Цитата
Юрий М написал:
А по Вашей логике получается, что задача скрывается в этих трёх точках.

ну если честно, то читая я думаю как раз о том, что есть короткая формула, и её нужно увеличить, сделать из нее длинную, а не справится с ограничением еxcel или сократить формулу.

Изменено: БМВ06.02.2023 19:56:17

По вопросам из тем форума, личку не читаю.

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#22

06.02.2023 20:00:53

Цитата
написал:

Цитата
Юрий М написал:
А по Вашей логике получается, что задача скрывается в этих трёх точках.

ну если честно, то читая я думаю как раз о том, что есть короткая формула, и её нужно увеличить, сделать из нее длинную, а не справится с ограничением еxcel или сократить формулу.

согласен,
и вообще после того как Юрий отмодерировал название темы) есть впечатление что есть какая формула которая увеличивает кол-во данных в ячейке) либо как делается более длинная формула :)

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

в добавлении к теме:) тогда — либо как еще оптимизировать монстроподобную формулу — в нормальную :)

ps. БМВ спасибо)

Изменено: George L06.02.2023 20:18:33

 

Юрий М

Модератор

Сообщений: 60570
Регистрация: 14.09.2012

Контакты см. в профиле

#24

06.02.2023 20:36:55

Цитата
George L написал:
после того как Юрий отмодерировал название темы)

Я ничего не менял.

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

массивка
=SUM(COUNTIFS(F:F;K3;G:G;$N$3:$N$6;E:E;TRANSPOSE($Q$3:$Q$4)))
но при данном количестве ок, а так, сountifs на весь столбец лучше не использовать.

По вопросам из тем форума, личку не читаю.

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#26

07.02.2023 08:51:07

Цитата
написал:
Я ничего не менял.

сорри тогда, значит другой, просто тоже не менял.

Цитата
написал:
массивка =SUM(COUNTIFS(F:F;K3;G:G;$N$3:$N$6;E:E;TRANSPOSE($Q$3:$Q$4)))но при данном количестве ок, а так, сountifs на весь столбец лучше не использовать.

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

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

#27

07.02.2023 20:11:40

Цитата
George L написал:
первые три столбца точно столбцы по полной будут использоваться.. там более 10к строк

10К строк это 1% от допустимого миллиона — это называется по поной?

По вопросам из тем форума, личку не читаю.

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#28

08.02.2023 14:39:56

Цитата
написал:
10К строк это 1% от допустимого миллиона — это называется по поной?

по сравнению с миллионом конечно нет, но в данном случае же не выделять каждый раз меняя в формуле диапазон (начальный и  конечный *фиксированный*)  

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

сделайте с запасом, даже 100К строк это 10% от того объема что функция  просматривает при обработке всего столбца. Это касается именно СЧЁТЕСЛИМН, в отличии от подобных, и видимо её писал непутевый программист, она работает именно так, хотя СУМЕСЛИМН уже обрабатывает только используемый диапазон.

По вопросам из тем форума, личку не читаю.

 

George L

Пользователь

Сообщений: 23
Регистрация: 24.12.2022

#30

16.02.2023 09:34:47

Цитата
написал:
сделайте с запасом, даже 100К строк это 10% от того объема что функция  просматривает при обработке всего столбца. Это касается именно СЧЁТЕСЛИМН, в отличии от подобных, и видимо её писал непутевый программист, она работает именно так, хотя СУМЕСЛИМН уже обрабатывает только используемый диапазон.

только время вышло написать..
кстати ..парадокс.. что к примеру взяв на 10к строчек с запасом 40к — все сработало, при уменьшении запаса до 30к выдает н/д , хотя строк проверил реально 10к .. хз почему .. тут же интервал в формуле меняю на 40к.. все опять ок..

(кстати сам файлик после внесения изменений начал грузиться дольше где то секунд 10 из-за вычисления потоков)

Длина формулы превышает 8192 знака

Almost

Дата: Понедельник, 30.12.2019, 16:18 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 40


Репутация:

2

±

Замечаний:
0% ±


Excel 2016

Уважаемые форумчане,

имеется древняя относительно большая (4М) сложная двоичная книга на 45 листов, с кучей имён, объектов, макросов, проверкой данных, с условным и специальным форматированием, группировками и пр. Не было разве что внешних связей. Вдруг понадобилось подружить её с другой системой и для этого конвертировать в *.xlsm, но пациент туда не хочет. Ошибка:

«Длина одной или нескольких формул в данной книге превышает допустимую длину, равную 8192 знакам. Чтобы обойти это ограничение, следует сохранить данную книгу в формате двоичной книги Excel»

В поисках источника файл раздербанен до 1 листа, причём вновь созданного. Удалены все родные листы, имена (в т.ч. скрытые), макросы. Но даже эта культя чем-то упирается и не идёт в *.xlsm. Осталось подозрение на содержимое папки External Links, но если его убрать, Excel падает на колени при попытке открыть и восстановить.

Есть идеи?

К сообщению приложен файл:

test.xlsb
(88.5 Kb)

Сообщение отредактировал AlmostПонедельник, 30.12.2019, 16:19

 

Ответить

bmv98rus

Дата: Понедельник, 30.12.2019, 20:11 |
Сообщение № 2

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4009


Репутация:

760

±

Замечаний:
0% ±


Excel 2013/2016

значит нужно просто перенести листы в другую книгу, ну и макросы тоже.


Замечательный Временно просто медведь , процентов на 20.

 

Ответить

Almost

Дата: Четверг, 09.01.2020, 10:30 |
Сообщение № 3

Группа: Пользователи

Ранг: Новичок

Сообщений: 40


Репутация:

2

±

Замечаний:
0% ±


Excel 2016

Тоже не помогло. Даже если один любой лист переношу в новую книгу, она уже не сохраняется в формате xlsm и выдаёт ту же ошибку.

 

Ответить

Nic70y

Дата: Четверг, 09.01.2020, 10:36 |
Сообщение № 4

Группа: Друзья

Ранг: Экселист

Сообщений: 8132


Репутация:

1998

±

Замечаний:
0% ±


Excel 2010

сохранил как .xls
.xls сохранил как .xlsm


ЮMoney 41001841029809

 

Ответить

Almost

Дата: Среда, 29.01.2020, 15:45 |
Сообщение № 5

Группа: Пользователи

Ранг: Новичок

Сообщений: 40


Репутация:

2

±

Замечаний:
0% ±


Excel 2016

Это прокатывало с обрезанным примером, но не сработало на большом исходнике.

В итоге помогло:

1. Изменить расширение на *.zip
2. Открыть файл архиватором
3. Удалить файлы внешних ссылок в папке «ExternalLinks» и подпапке «rels», не удаляя сами папки (иначе Excel рухнет)
4. Вернуть оригинальное расширение
5. Открыть в Excel и разрешить восстановление

 

Ответить

_Boroda_

Дата: Среда, 29.01.2020, 21:30 |
Сообщение № 6

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Удалены все родные … имена (в т.ч. скрытые)

Вообще-то у Вас в этом файле 3140 скрытых имен :D
Вот такой макрос делает все имена видимыми и на листе выводит те, длина которых более 8192 знаков
[vba]

Код

Sub tt()
    With ThisWorkbook
        m_ = .Names.Count
‘        MsgBox «Кол-во имен — » & m_
        For i = 1 To m_
            .Names(i).Visible = 1
            l_ = .Names(i).RefersToLocal
            If Len(l_) > 8192 Then
                k_ = k_ + 1
                Cells(k_, 1) = .Names(i).NameLocal
                Cells(k_, 2) = «‘» & l_
                Cells(k_, 3) = Len(l_)
            End If
        Next i
    End With
End Sub

[/vba]
А вот такой удаляет те имена, которые можно (оставшиеся 9 штук можно удалить руками, а можно и не трогать, они не мешают)
[vba]

Код

Sub ttt()
    With ThisWorkbook
        On Error Resume Next
        For i = .Names.Count To 1 Step -1
            .Names(i).Delete
        Next i
    End With
End Sub

[/vba]
Итог в файле _3


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Almost

Дата: Четверг, 30.01.2020, 14:39 |
Сообщение № 7

Группа: Пользователи

Ранг: Новичок

Сообщений: 40


Репутация:

2

±

Замечаний:
0% ±


Excel 2016

_Boroda_, Офигеть, спасибо большое. Я прогонял такой макрос, думал что он удалит все скрытые имена:

[vba]

Код

Sub tt2tt()

    For Each nm In ActiveWorkbook.Names

        If Not nm.Visible Then nm.Delete

    Next nm

End Sub

[/vba]

 

Ответить

There are at least two forms of formula in Excel. One is used for cells, and the other is used for data validation. The max length limit for the formula to do data validation is about only 210 chars.

Here is a problem I am trying to solve. Given a data set with categories and values

category   value1   value2
a           1.0     ...
a           2.0
a           1.0
a           3.0
b           1.0
b           5.0
b           2.0     ...
...

I want to validate these values by checking if the value change from the row above is within one sigma deviation of its category. That means we need to skip the first row of each category.

Here is what I tried:

The following formula works for cells of each category beginning from the second row to the last row of its category.

=INDIRECT(ADDRESS(ROW(), COLUMN())) - INDIRECT(ADDRESS(ROW()-1, COLUMN())) < 
1.0*STDDEV.P(INDIRECT(ADDRESS(MATCH(INDIRECT("A" & ROW()), $A:$A, 0), COLUMN()) & ":" &ADDRESS(MATCH(INDIRECT("A"&ROW()),$A:$A, 1), COLUMN())))

However, the following doesn’t work because of the max length limit of formula in excel — just add IF(formula_above, True, False):

=IF(INDIRECT(ADDRESS(ROW(), COLUMN())) - INDIRECT(ADDRESS(ROW()-1, COLUMN())) < 
1.0*STDDEV.P(INDIRECT(ADDRESS(MATCH(INDIRECT("A" & ROW()), $A:$A, 0), COLUMN()) & ":" &ADDRESS(MATCH(INDIRECT("A"&ROW()),$A:$A, 1), COLUMN()))), TRUE, FALSE)

This can work if one input the formula into a cell, but it doesn’t work for the refer-to formula of Data Validation.

To work with all cells all rows (without need to manully skip the first row of each category), I wrote following formula for data validation. But it gives «The FOrmula currently evaluates to an error…» because of the max length limit of the excel.

=IF(MATCH(INDIRECT("A" & ROW()), $A:$A, 0) = ROW(), TRUE,
INDIRECT(ADDRESS(ROW(), COLUMN())) - INDIRECT(ADDRESS(ROW()-1, COLUMN())) < 
1.0*STDDEV.P(INDIRECT(ADDRESS(MATCH(INDIRECT("A" & ROW()), $A:$A, 0), COLUMN()) & ":" &ADDRESS(MATCH(INDIRECT("A"&ROW()),$A:$A, 1), COLUMN()))))

Although Microsoft claims that the length limit of formula of excel is «8192», it seems not true:
https://support.office.com/en-nz/article/Excel-specifications-and-limits-1672b34d-7043-467e-8e27-269d656771c3

Update:

Here is another try for the formula of «Data Validation»:

=IF($A2<>$A1, TRUE, abs(B2-B1)<Stdev.P(offset(indirect(address(match($A2,$A:$A,0), column())), 0,0,countif($A:$A, $A2,1)))

It is strange that the True/False value of the formula above is correct when I input in a cell, but when I input it in the «Data Validation» ->Custom -> Formula. The result is completely wrong. It always gives False.

0 / 0 / 0

Регистрация: 03.06.2012

Сообщений: 31

1

Обход ограничения «Слишком длинная формула»

09.11.2012, 16:55. Показов 19481. Ответов 8


Студворк — интернет-сервис помощи студентам

Приветствую всех специалистов по EXСEL. Периодически возникают сложности с длинными формулами — которые программа отказывается обрабатывать. В этих случаях я решаю эту проблему тем, что дописываю новые условия в рядом находящуюся ячейку — что не совсем удобно. Вопрос: существует ли возможность снять ограничение на длину формул?.. Формулы, длину которых я ищу возможность увеличить, состоят из алгоритмов сравнения (ЕСЛИ/И/ИЛИ) динамических данных двух ячеек. Буду очень признателен за ответ.



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

09.11.2012, 16:55

8

956 / 596 / 11

Регистрация: 11.06.2010

Сообщений: 1,345

09.11.2012, 17:01

2

Цитата
Сообщение от CC
Посмотреть сообщение

существует ли возможность снять ограничение на длину формул?

Нет. В каждой версии есть свои ограничения

Цитата
Сообщение от CC
Посмотреть сообщение

Формулы, длину которых я ищу возможность увеличить, состоят из алгоритмов сравнения (ЕСЛИ/И/ИЛИ) динамических данных двух ячеек

Эти формулы легко «укоротить». Способов много, о некоторых из них даже написано в справке Excel



1



0 / 0 / 0

Регистрация: 03.06.2012

Сообщений: 31

09.11.2012, 18:35

 [ТС]

3

Добрый вечер, уважаемый Serge 007 .
1) Если в какой-либо из версий EXCEL есть возможность радикально удлинить формулу по сравнению с моей ‘2003 версией — подскажите, пожалуйста, как она называется.
2) Подскажите, пожалуйста, направление поиска решения задачи сравнения 500 различных значений одной ячейки с 500 различными значениями другой ячейки — с записью результата сопоставления в третью ячейку (с учетом того, что в некоторых случаях сопоставляются не только чистые значения, а и математические операции над элементами этих значений).
Спасибо за ответ.



0



2633 / 1333 / 255

Регистрация: 25.10.2010

Сообщений: 2,194

09.11.2012, 19:02

4

Цитата
Сообщение от CC
Посмотреть сообщение

возможность радикально удлинить формулу

Наверное, здесь вопрос даже не в длине формулы, а в ограничении количества вложений функций, в частности ЕСЛИ

Цитата
Сообщение от CC
Посмотреть сообщение

направление поиска решения задачи

Без конкретного примера трудно угадать, но возможно, если правильно организовать данные, помогут функции ПРОСМОТР, ВПР, ГПР, ИНДЕКС+ПОИСКПОЗ
Можно пользовательскую функцию написать



1



956 / 596 / 11

Регистрация: 11.06.2010

Сообщений: 1,345

09.11.2012, 20:54

5

Цитата
Сообщение от CC
Посмотреть сообщение

1) Если в какой-либо из версий EXCEL есть возможность радикально удлинить формулу по сравнению с моей ‘2003 версией — подскажите, пожалуйста, как она называется.

Каждая последующая версия Excel (2007,2010,2013) обладает всё большими возможностями для некоторых функций. Например количество вложений функций ЕСЛИ() в
2003 — 7
2007 — 64
2010 — 128

Цитата
Сообщение от CC
Посмотреть сообщение

направление поиска решения задачи

Надо видеть эту задачу. Универсальных решений не бывает



1



0 / 0 / 0

Регистрация: 03.06.2012

Сообщений: 31

09.11.2012, 21:50

 [ТС]

6

Уважаемые Serge 007 и Pelena, в приведенном мною примере (во вложенном файле) ячейка А3 содержит всего несколько формул — но реально их может быть 500 и более, аналогичных этим по контексту. Вычисления происходят исключительно в плоскости двух ячеек. К сожалению, унифицированных алгоритмов вычисления для значений ячеек А1 и А2 нет — исключая случаи точного соответствия.
Сейчас сделаю резервную копию оси и попробую установить EXCEL-2014.. ))



0



2633 / 1333 / 255

Регистрация: 25.10.2010

Сообщений: 2,194

09.11.2012, 23:04

7

Ничего не поняла
По всей видимости числа из A1 и A2 тоже как-то формируются из определенных цифр, но логику не уловила

Кстати, условие ПСТР(A2;1;2)<>СУММ(ПСТР(A2;2;1)+ПРАВСИМВ(A2)) будет всегда истинным (если только первая цифра числа не ноль)



0



0 / 0 / 0

Регистрация: 03.06.2012

Сообщений: 31

10.11.2012, 03:00

 [ТС]

8

Цитата
Сообщение от Pelena
Посмотреть сообщение

Ничего не поняла

Да я тоже пока мало чего понимаю — поэтому здесь и консультируюсь.. (шутка, ессно).
Значения в ячейках А1 и А2 берутся из других ячеек, все значения живые и с периодичностью раз в час шевелятся.
Насчёт перманентной истинности приведённого в моём примере условия — да, возможно Вы и правы. Но ведь это всего лишь пример, обозначающий приблизительную структуру моих вычислений.



0



6875 / 2807 / 533

Регистрация: 19.10.2012

Сообщений: 8,562

11.11.2012, 02:29

9

Я думаю чем городить такую многоэтажность, проще написать UDF, где нет в общем никаких ограничений.
А что именно нужно — из формулы вычитывать совершенно неохота.
Вы словами можете написать, что и как там анализируется?



0



hello guys

I am using office 2019

I tried to maintain our work activity progress in the project by making a tracking plane depending on the entry data we have provided it in another sheet table

for an example:

I have a finished work along alignment from

station : 0+300 to 0+500

and from 

station : 0+700 to 0+900

i would like highlight the cells under my station’s dividing in the sheet

alexanderjaml_0-1613557486362.png

I have used this formula and it was successful:

=IF(OR(AND(A$1>=BEDDING!$A$1,A$1<=BEDDING!$B$1),AND(A$1>=BEDDING!$A$2,A$1<=BEDDING!$B$2),AND(A$1>=BEDDING!$A$3,A$1<=BEDDING!$B$3),AND(A$1>=BEDDING!$A$4,A$1<=BEDDING!$B$4),AND(A$1>=BEDDING!$A$5,A$1<=BEDDING!$B$5),AND(A$1>=BEDDING!$A$6,A$1<=BEDDING!$B$6),AND(A$1>=BEDDING!$A$7,A$1<=BEDDING!$B$7),AND(A$1>=BEDDING!$A$8,A$1<=BEDDING!$B$8),AND(A$1>=BEDDING!$A$9,A$1<=BEDDING!$B$9),AND(A$1>=BEDDING!$A$10,A$1<=BEDDING!$B$10),AND(A$1>=BEDDING!$A$11,A$1<=BEDDING!$B$11),AND(A$1>=BEDDING!$A$12,A$1<=BEDDING!$B$12),AND(A$1>=BEDDING!$A$13,A$1<=BEDDING!$B$13),AND(A$1>=BEDDING!$A$14,A$1<=BEDDING!$B$14),AND(A$1>=BEDDING!$A$15,A$1<=BEDDING!$B$15),AND(A$1>=BEDDING!$A$16,A$1<=BEDDING!$B$16),AND(A$1>=BEDDING!$A$17,A$1<=BEDDING!$B$17),AND(A$1>=BEDDING!$A$18,A$1<=BEDDING!$B$18),AND(A$1>=BEDDING!$A$19,A$1<=BEDDING!$B$19),AND(A$1>=BEDDING!$A$20,A$1<=BEDDING!$B$20),AND(A$1>=BEDDING!$A$21,A$1<=BEDDING!$B$21),AND(A$1>=BEDDING!$A$22,A$1<=BEDDING!$B$22),AND(A$1>=BEDDING!$A$23,A$1<=BEDDING!$B$23),AND(A$1>=BEDDING!$A$24,A$1<=BEDDING!$B$24),AND(A$1>=BEDDING!$A$25,A$1<=BEDDING!$B$25),AND(A$1>=BEDDING!$A$26,A$1<=BEDDING!$B$26),AND(A$1>=BEDDING!$A$27,A$1<=BEDDING!$B$27),AND(A$1>=BEDDING!$A$28,A$1<=BEDDING!$B$28),AND(A$1>=BEDDING!$A$29,A$1<=BEDDING!$B$29),AND(A$1>=BEDDING!$A$30,A$1<=BEDDING!$B$30),AND(A$1>=BEDDING!$A$31,A$1<=BEDDING!$B$31),AND(A$1>=BEDDING!$A$32,A$1<=BEDDING!$B$32),AND(A$1>=BEDDING!$A$33,A$1<=BEDDING!$B$33),AND(A$1>=BEDDING!$A$34,A$1<=BEDDING!$B$34),AND(A$1>=BEDDING!$A$35,A$1<=BEDDING!$B$35),AND(A$1>=BEDDING!$A$36,A$1<=BEDDING!$B$36),AND(A$1>=BEDDING!$A$37,A$1<=BEDDING!$B$37),AND(A$1>=BEDDING!$A$38,A$1<=BEDDING!$B$38),AND(A$1>=BEDDING!$A$39,A$1<=BEDDING!$B$39),AND(A$1>=BEDDING!$A$40,A$1<=BEDDING!$B$40),AND(A$1>=BEDDING!$A$41,A$1<=BEDDING!$B$41),AND(A$1>=BEDDING!$A$42,A$1<=BEDDING!$B$42),AND(A$1>=BEDDING!$A$43,A$1<=BEDDING!$B$43),AND(A$1>=BEDDING!$A$44,A$1<=BEDDING!$B$44),AND(A$1>=BEDDING!$A$45,A$1<=BEDDING!$B$45),AND(A$1>=BEDDING!$A$46,A$1<=BEDDING!$B$46),AND(A$1>=BEDDING!$A$47,A$1<=BEDDING!$B$47),AND(A$1>=BEDDING!$A$48,A$1<=BEDDING!$B$48),AND(A$1>=BEDDING!$A$49,A$1<=BEDDING!$B$49),AND(A$1>=BEDDING!$A$50,A$1<=BEDDING!$B$50),AND(A$1>=BEDDING!$A$51,A$1<=BEDDING!$B$51),AND(A$1>=BEDDING!$A$52,A$1<=BEDDING!$B$52),AND(A$1>=BEDDING!$A$53,A$1<=BEDDING!$B$53),AND(A$1>=BEDDING!$A$54,A$1<=BEDDING!$B$54),AND(A$1>=BEDDING!$A$55,A$1<=BEDDING!$B$55),AND(A$1>=BEDDING!$A$56,A$1<=BEDDING!$B$56),AND(A$1>=BEDDING!$A$57,A$1<=BEDDING!$B$57),AND(A$1>=BEDDING!$A$58,A$1<=BEDDING!$B$58),AND(A$1>=BEDDING!$A$59,A$1<=BEDDING!$B$59),AND(A$1>=BEDDING!$A$60,A$1<=BEDDING!$B$60),AND(A$1>=BEDDING!$A$61,A$1<=BEDDING!$B$61),AND(A$1>=BEDDING!$A$62,A$1<=BEDDING!$B$62),AND(A$1>=BEDDING!$A$63,A$1<=BEDDING!$B$63),AND(A$1>=BEDDING!$A$64,A$1<=BEDDING!$B$64),AND(A$1>=BEDDING!$A$65,A$1<=BEDDING!$B$65),AND(A$1>=BEDDING!$A$66,A$1<=BEDDING!$B$66),AND(A$1>=BEDDING!$A$67,A$1<=BEDDING!$B$67),AND(A$1>=BEDDING!$A$68,A$1<=BEDDING!$B$68),AND(A$1>=BEDDING!$A$69,A$1<=BEDDING!$B$69),AND(A$1>=BEDDING!$A$70,A$1<=BEDDING!$B$70),AND(A$1>=BEDDING!$A$71,A$1<=BEDDING!$B$71),AND(A$1>=BEDDING!$A$72,A$1<=BEDDING!$B$72),AND(A$1>=BEDDING!$A$73,A$1<=BEDDING!$B$73),AND(A$1>=BEDDING!$A$74,A$1<=BEDDING!$B$74),AND(A$1>=BEDDING!$A$75,A$1<=BEDDING!$B$75),AND(A$1>=BEDDING!$A$76,A$1<=BEDDING!$B$76),AND(A$1>=BEDDING!$A$77,A$1<=BEDDING!$B$77),AND(A$1>=BEDDING!$A$78,A$1<=BEDDING!$B$78),AND(A$1>=BEDDING!$A$79,A$1<=BEDDING!$B$79),AND(A$1>=BEDDING!$A$80,A$1<=BEDDING!$B$80),AND(A$1>=BEDDING!$A$81,A$1<=BEDDING!$B$81),AND(A$1>=BEDDING!$A$82,A$1<=BEDDING!$B$82),AND(A$1>=BEDDING!$A$83,A$1<=BEDDING!$B$83),AND(A$1>=BEDDING!$A$84,A$1<=BEDDING!$B$84),AND(A$1>=BEDDING!$A$85,A$1<=BEDDING!$B$85),AND(A$1>=BEDDING!$A$86,A$1<=BEDDING!$B$86),AND(A$1>=BEDDING!$A$87,A$1<=BEDDING!$B$87),AND(A$1>=BEDDING!$A$88,A$1<=BEDDING!$B$88),AND(A$1>=BEDDING!$A$89,A$1<=BEDDING!$B$89),AND(A$1>=BEDDING!$A$90,A$1<=BEDDING!$B$90),AND(A$1>=BEDDING!$A$91,A$1<=BEDDING!$B$91),AND(A$1>=BEDDING!$A$92,A$1<=BEDDING!$B$92),AND(A$1>=BEDDING!$A$93,A$1<=BEDDING!$B$93),AND(A$1>=BEDDING!$A$94,A$1<=BEDDING!$B$94),AND(A$1>=BEDDING!$A$95,A$1<=BEDDING!$B$95),AND(A$1>=BEDDING!$A$96,A$1<=BEDDING!$B$96),AND(A$1>=BEDDING!$A$97,A$1<=BEDDING!$B$97),AND(A$1>=BEDDING!$A$98,A$1<=BEDDING!$B$98),AND(A$1>=BEDDING!$A$99,A$1<=BEDDING!$B$99),AND(A$1>=BEDDING!$A$100,A$1<=BEDDING!$B$100)),1,0)

but I can’t enter character more than 8192

alexanderjaml_1-1613557919973.png

so is there any solution for it or other way to solve it

best regards

Понравилась статья? Поделить с друзьями:
  • Excel ограничение высоты строк
  • Excel оглавление с номерами страниц
  • Excel обязательные для заполнения поля
  • Excel обязательно are you
  • Excel объем текста в ячейке