Результаты поиска
krosav4ig
Дата: Понедельник, 19.11.2018, 00:02 |
Сообщение № 641 | Тема: Чередование значений
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
не совсем понятно, что нужно получить как вариант, формула Код
=ArrayFormula(ARRAY_CONSTRAIN(--iferror(B1:B=B2:B;);counta(B1:B);1))
или УФ по формуле Код
=or(if(row()>1;B1=index(B:B;row()-1));B1=index(B:B;row()+1))
не совсем понятно, что нужно получить как вариант, формула Код
=ArrayFormula(ARRAY_CONSTRAIN(--iferror(B1:B=B2:B;);counta(B1:B);1))
или УФ по формуле Код
=or(if(row()>1;B1=index(B:B;row()-1));B1=index(B:B;row()+1))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Понедельник, 19.11.2018, 00:16
Ответить
Сообщение не совсем понятно, что нужно получить как вариант, формула Код
=ArrayFormula(ARRAY_CONSTRAIN(--iferror(B1:B=B2:B;);counta(B1:B);1))
или УФ по формуле Код
=or(if(row()>1;B1=index(B:B;row()-1));B1=index(B:B;row()+1))
Автор - krosav4ig Дата добавления - 19.11.2018 в 00:02
krosav4ig
Дата: Воскресенье, 18.11.2018, 22:30 |
Сообщение № 642 | Тема: Ассоциации
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Автор - krosav4ig Дата добавления - 18.11.2018 в 22:30
krosav4ig
Дата: Воскресенье, 18.11.2018, 18:32 |
Сообщение № 643 | Тема: подсчет слова с отрицательным и положительным значением
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте. и где тут готовое решение?
Здравствуйте. и где тут готовое решение? krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Здравствуйте. и где тут готовое решение? Автор - krosav4ig Дата добавления - 18.11.2018 в 18:32
krosav4ig
Дата: Суббота, 17.11.2018, 22:19 |
Сообщение № 644 | Тема: Независимое выполнение кодов
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте. [vba]Код
Sub Макрос1() Application.EnableEvents = 0 MsgBox " Вводится значение а ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "а" MsgBox " Вводится значение в ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "в" MsgBox " Удаление данных ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "" Application.EnableEvents = 1 End Sub
[/vba]
Здравствуйте. [vba]Код
Sub Макрос1() Application.EnableEvents = 0 MsgBox " Вводится значение а ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "а" MsgBox " Вводится значение в ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "в" MsgBox " Удаление данных ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "" Application.EnableEvents = 1 End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Здравствуйте. [vba]Код
Sub Макрос1() Application.EnableEvents = 0 MsgBox " Вводится значение а ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "а" MsgBox " Вводится значение в ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "в" MsgBox " Удаление данных ", vbInformation, " Сообщение" Range("E3:E4").Select ActiveCell.FormulaR1C1 = "" Application.EnableEvents = 1 End Sub
[/vba] Автор - krosav4ig Дата добавления - 17.11.2018 в 22:19
krosav4ig
Дата: Суббота, 17.11.2018, 04:40 |
Сообщение № 645 | Тема: Выполнение макросов с учетом порядкового расположения...
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
желательно создавать именные диапазоны?
если нужна обратная совместимость, то дапустую ячейку списка как-то привязать к Макросу_0
после [vba]Код
If Not Intersect(Target, Range("E3")) Is Nothing Then
[/vba]добавить[vba]Код
if isempty(target(1, 1)) then call Макрос_0: Exit Sub
[/vba]
желательно создавать именные диапазоны?
если нужна обратная совместимость, то дапустую ячейку списка как-то привязать к Макросу_0
после [vba]Код
If Not Intersect(Target, Range("E3")) Is Nothing Then
[/vba]добавить[vba]Код
if isempty(target(1, 1)) then call Макрос_0: Exit Sub
[/vba]krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение желательно создавать именные диапазоны?
если нужна обратная совместимость, то дапустую ячейку списка как-то привязать к Макросу_0
после [vba]Код
If Not Intersect(Target, Range("E3")) Is Nothing Then
[/vba]добавить[vba]Код
if isempty(target(1, 1)) then call Макрос_0: Exit Sub
[/vba]Автор - krosav4ig Дата добавления - 17.11.2018 в 04:40
krosav4ig
Дата: Суббота, 17.11.2018, 04:00 |
Сообщение № 646 | Тема: Выполнение макросов с учетом порядкового расположения...
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Видимо собака зарылась в разнице версий Excel, у меня сейчас под рукой только 2007 именно поэтому тут написаноЦитата
Старайтесь прилагать файлы в версии Excel 2003-го офиса(xls), так как эти файлы могут открыть пользователи с любой версией Excel, в отличие от файлов версий Excel 2007/2010/2013 (xlsх).
При открытии в E3 проверки данных нет, скрин делать лень. Нашел диапазон на скрытом листе, в 2007 не поддерживаются источники для проверки данных с другого листа напрямую исправил макрос во 2 посте второй вариант макроса[vba]Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim s$, x$, v As Variant If Not Intersect(Target, Range("E3")) Is Nothing Then s = Target.Validation.Formula1 v = Evaluate(s) If Left(s, 1) = "=" Then If TypeName(v) = "Range" Then v = v.Formula x = Join(Application.Transpose(v), ";") Else: x = s End If Application.Run "Лист1.Макрос_" & UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) End If End Sub
[/vba]
Видимо собака зарылась в разнице версий Excel, у меня сейчас под рукой только 2007 именно поэтому тут написаноЦитата
Старайтесь прилагать файлы в версии Excel 2003-го офиса(xls), так как эти файлы могут открыть пользователи с любой версией Excel, в отличие от файлов версий Excel 2007/2010/2013 (xlsх).
При открытии в E3 проверки данных нет, скрин делать лень. Нашел диапазон на скрытом листе, в 2007 не поддерживаются источники для проверки данных с другого листа напрямую исправил макрос во 2 посте второй вариант макроса[vba]Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim s$, x$, v As Variant If Not Intersect(Target, Range("E3")) Is Nothing Then s = Target.Validation.Formula1 v = Evaluate(s) If Left(s, 1) = "=" Then If TypeName(v) = "Range" Then v = v.Formula x = Join(Application.Transpose(v), ";") Else: x = s End If Application.Run "Лист1.Макрос_" & UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) End If End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 17.11.2018, 04:05
Ответить
Сообщение Видимо собака зарылась в разнице версий Excel, у меня сейчас под рукой только 2007 именно поэтому тут написаноЦитата
Старайтесь прилагать файлы в версии Excel 2003-го офиса(xls), так как эти файлы могут открыть пользователи с любой версией Excel, в отличие от файлов версий Excel 2007/2010/2013 (xlsх).
При открытии в E3 проверки данных нет, скрин делать лень. Нашел диапазон на скрытом листе, в 2007 не поддерживаются источники для проверки данных с другого листа напрямую исправил макрос во 2 посте второй вариант макроса[vba]Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim s$, x$, v As Variant If Not Intersect(Target, Range("E3")) Is Nothing Then s = Target.Validation.Formula1 v = Evaluate(s) If Left(s, 1) = "=" Then If TypeName(v) = "Range" Then v = v.Formula x = Join(Application.Transpose(v), ";") Else: x = s End If Application.Run "Лист1.Макрос_" & UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) End If End Sub
[/vba] Автор - krosav4ig Дата добавления - 17.11.2018 в 04:00
krosav4ig
Дата: Суббота, 17.11.2018, 03:25 |
Сообщение № 647 | Тема: Выполнение макросов с учетом порядкового расположения...
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
где он? его я тоже в вашем файле не нашел
где он? его я тоже в вашем файле не нашел krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение где он? его я тоже в вашем файле не нашел Автор - krosav4ig Дата добавления - 17.11.2018 в 03:25
krosav4ig
Дата: Суббота, 17.11.2018, 02:34 |
Сообщение № 648 | Тема: Выполнение макросов с учетом порядкового расположения...
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
krosav4ig
Дата: Суббота, 17.11.2018, 01:38 |
Сообщение № 649 | Тема: Выбрать наибольшую разницу от нуля.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
чтобы работало в 100 данных? за место 10
вместо -9 написать -99 и, соответственно, вместо G4:G99 указать диапазон, охватывающий все данные и формулу лучше переписать так, ибо, если будут дробные числа будет работать неверноКод
=ПРОСМОТР(9^9;ВПР(Ч(ИНДЕКС(МАКС(ABS(ИНДЕКС(G:G;МАКС(СТРОКА(G4);ПРОСМОТР(9^9;G4:G99;СТРОКА(G4:G99))-9)):ИНДЕКС(G:G;ПРОСМОТР(9^9;G4:G99;СТРОКА(G4:G99)))))*{1;-1};));G4:G99;1;))
чтобы работало в 100 данных? за место 10
вместо -9 написать -99 и, соответственно, вместо G4:G99 указать диапазон, охватывающий все данные и формулу лучше переписать так, ибо, если будут дробные числа будет работать неверноКод
=ПРОСМОТР(9^9;ВПР(Ч(ИНДЕКС(МАКС(ABS(ИНДЕКС(G:G;МАКС(СТРОКА(G4);ПРОСМОТР(9^9;G4:G99;СТРОКА(G4:G99))-9)):ИНДЕКС(G:G;ПРОСМОТР(9^9;G4:G99;СТРОКА(G4:G99)))))*{1;-1};));G4:G99;1;))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 17.11.2018, 01:44
Ответить
Сообщение чтобы работало в 100 данных? за место 10
вместо -9 написать -99 и, соответственно, вместо G4:G99 указать диапазон, охватывающий все данные и формулу лучше переписать так, ибо, если будут дробные числа будет работать неверноКод
=ПРОСМОТР(9^9;ВПР(Ч(ИНДЕКС(МАКС(ABS(ИНДЕКС(G:G;МАКС(СТРОКА(G4);ПРОСМОТР(9^9;G4:G99;СТРОКА(G4:G99))-9)):ИНДЕКС(G:G;ПРОСМОТР(9^9;G4:G99;СТРОКА(G4:G99)))))*{1;-1};));G4:G99;1;))
Автор - krosav4ig Дата добавления - 17.11.2018 в 01:38
krosav4ig
Дата: Суббота, 17.11.2018, 01:18 |
Сообщение № 650 | Тема: Выбрать наибольшую разницу от нуля.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
krosav4ig ваша формула ищет данные не в последних 10.
Исправил свою формулу в 12 посте (вместо -10 должно быть -9)
krosav4ig ваша формула ищет данные не в последних 10.
Исправил свою формулу в 12 посте (вместо -10 должно быть -9)krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение krosav4ig ваша формула ищет данные не в последних 10.
Исправил свою формулу в 12 посте (вместо -10 должно быть -9)Автор - krosav4ig Дата добавления - 17.11.2018 в 01:18
krosav4ig
Дата: Суббота, 17.11.2018, 01:09 |
Сообщение № 651 | Тема: Выполнение макросов с учетом порядкового расположения...
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте. [vba]Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim s$, x$, v As Variant If Not Intersect(Target, Range("E3")) Is Nothing Then s = Target.Validation.Formula1 v = Evaluate(s) If Left(s, 1) = "=" Then If TypeName(v) = "Range" Then v = v.Formula x = Join(Application.Transpose(v), ";") Else: x = s End If Select Case UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) Case 1: Call Макрос_1 Case 2: Call Макрос_2 Case 3: Call Макрос_3 End Select 'ИЛИ 'Application.Run "Макрос_" & UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) End If End Sub
[/vba]
Здравствуйте. [vba]Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim s$, x$, v As Variant If Not Intersect(Target, Range("E3")) Is Nothing Then s = Target.Validation.Formula1 v = Evaluate(s) If Left(s, 1) = "=" Then If TypeName(v) = "Range" Then v = v.Formula x = Join(Application.Transpose(v), ";") Else: x = s End If Select Case UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) Case 1: Call Макрос_1 Case 2: Call Макрос_2 Case 3: Call Макрос_3 End Select 'ИЛИ 'Application.Run "Макрос_" & UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) End If End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 17.11.2018, 03:59
Ответить
Сообщение Здравствуйте. [vba]Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim s$, x$, v As Variant If Not Intersect(Target, Range("E3")) Is Nothing Then s = Target.Validation.Formula1 v = Evaluate(s) If Left(s, 1) = "=" Then If TypeName(v) = "Range" Then v = v.Formula x = Join(Application.Transpose(v), ";") Else: x = s End If Select Case UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) Case 1: Call Макрос_1 Case 2: Call Макрос_2 Case 3: Call Макрос_3 End Select 'ИЛИ 'Application.Run "Макрос_" & UBound(Split(";" & Mid(x, 1, InStr(1, x, Target) - 1), ";")) End If End Sub
[/vba] Автор - krosav4ig Дата добавления - 17.11.2018 в 01:09
krosav4ig
Дата: Пятница, 16.11.2018, 21:11 |
Сообщение № 652 | Тема: Выбрать наибольшую разницу от нуля.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Для G3 массивная формула Код
=ПРОСМОТР(9^9;ВПР(Ч(ИНДЕКС(МАКС(ABS(ИНДЕКС(G:G;МАКС(СТРОКА(G4);ПРОСМОТР(2;1/G4:G99;СТРОКА(G4:G99))-9)):ИНДЕКС(G:G;ПРОСМОТР(2;1/G4:G99;СТРОКА(G4:G99)))))*{1;-1};));G4:G99;1;))
Для G3 массивная формула Код
=ПРОСМОТР(9^9;ВПР(Ч(ИНДЕКС(МАКС(ABS(ИНДЕКС(G:G;МАКС(СТРОКА(G4);ПРОСМОТР(2;1/G4:G99;СТРОКА(G4:G99))-9)):ИНДЕКС(G:G;ПРОСМОТР(2;1/G4:G99;СТРОКА(G4:G99)))))*{1;-1};));G4:G99;1;))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Суббота, 17.11.2018, 01:29
Ответить
Сообщение Для G3 массивная формула Код
=ПРОСМОТР(9^9;ВПР(Ч(ИНДЕКС(МАКС(ABS(ИНДЕКС(G:G;МАКС(СТРОКА(G4);ПРОСМОТР(2;1/G4:G99;СТРОКА(G4:G99))-9)):ИНДЕКС(G:G;ПРОСМОТР(2;1/G4:G99;СТРОКА(G4:G99)))))*{1;-1};));G4:G99;1;))
Автор - krosav4ig Дата добавления - 16.11.2018 в 21:11
krosav4ig
Дата: Пятница, 16.11.2018, 14:35 |
Сообщение № 653 | Тема: Деление текста по кол-ву символов с учетом предлогов
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
немного короче Код
=ЛЕВБ(A3;ПРОСМОТР(A$2+1;ЕСЛИ(МУМНОЖ(--СОВПАД(СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(" "&A3;" ";ПОВТОР(" ";999));999*СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))));999));ТРАНСП(СТРОЧН(Предлоги!A$1:A$372)));СТРОКА(Предлоги!A$1:A$372)^0);НД();МУМНОЖ((СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))>=ТРАНСП(СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))))*ТРАНСП(ДЛСТР(СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(" "&A3;" ";ПОВТОР(" ";999));999*СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))));999)))+1);СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))^0)))-1)
немного короче Код
=ЛЕВБ(A3;ПРОСМОТР(A$2+1;ЕСЛИ(МУМНОЖ(--СОВПАД(СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(" "&A3;" ";ПОВТОР(" ";999));999*СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))));999));ТРАНСП(СТРОЧН(Предлоги!A$1:A$372)));СТРОКА(Предлоги!A$1:A$372)^0);НД();МУМНОЖ((СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))>=ТРАНСП(СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))))*ТРАНСП(ДЛСТР(СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(" "&A3;" ";ПОВТОР(" ";999));999*СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))));999)))+1);СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))^0)))-1)
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение немного короче Код
=ЛЕВБ(A3;ПРОСМОТР(A$2+1;ЕСЛИ(МУМНОЖ(--СОВПАД(СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(" "&A3;" ";ПОВТОР(" ";999));999*СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))));999));ТРАНСП(СТРОЧН(Предлоги!A$1:A$372)));СТРОКА(Предлоги!A$1:A$372)^0);НД();МУМНОЖ((СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))>=ТРАНСП(СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))))*ТРАНСП(ДЛСТР(СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ(" "&A3;" ";ПОВТОР(" ";999));999*СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))));999)))+1);СТРОКА(A$1:ИНДЕКС(A:A;ДЛСТР(0&A3)-ДЛСТР(ПОДСТАВИТЬ(A3;" ";))))^0)))-1)
Автор - krosav4ig Дата добавления - 16.11.2018 в 14:35
krosav4ig
Дата: Пятница, 16.11.2018, 05:05 |
Сообщение № 654 | Тема: Выбрать наибольшую разницу от нуля.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте Массивная формулаКод
=ИНДЕКС(C4:C22;ПОИСКПОЗ(МАКС(ABS(C4:C22));ABS(C4:C22);))
Здравствуйте Массивная формулаКод
=ИНДЕКС(C4:C22;ПОИСКПОЗ(МАКС(ABS(C4:C22));ABS(C4:C22);))
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Пятница, 16.11.2018, 05:06
Ответить
Сообщение Здравствуйте Массивная формулаКод
=ИНДЕКС(C4:C22;ПОИСКПОЗ(МАКС(ABS(C4:C22));ABS(C4:C22);))
Автор - krosav4ig Дата добавления - 16.11.2018 в 05:05
krosav4ig
Дата: Пятница, 16.11.2018, 04:41 |
Сообщение № 655 | Тема: Макрос берет конечные пункты линий не из ячеек а из строк
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте. Можно как-то так [vba]Код
Sub Макрос1() Dim o1 As Shape, o2 As Shape Dim x1!, y1!, r1!, x2!, y2!, r2!, xa!, ya!, xb!, yb! Dim col As Range For Each col In [A3:E6].Columns On Error Resume Next Set o1 = ActiveSheet.Shapes(col.Cells(1)) Set o2 = ActiveSheet.Shapes(col.Cells(4)) If Not (o1 Is Nothing Or o2 Is Nothing) Then GetParam o1, x1, y1, r1 GetParam o2, x2, y2, r2 Dim i&, j&, p#, l!, lmin! Dim x1t!, y1t!, x2t!, y2t!, bc&, ec& p = Atn(1) lmin = [a65536].Top - [a1].Top For i = 0 To 7 x1t = x1 + Cos(p * i) * r1 y1t = y1 - Sin(p * i) * r1 For j = 0 To 7 x2t = x2 + Cos(p * j) * r2 y2t = y2 - Sin(p * j) * r2 l = Sqr((x1t - x2t) ^ 2 + (y1t - y2t) ^ 2) If l < lmin Then lmin = l xa = x1t ya = y1t xb = x2t yb = y2t bc = i ec = j End If Next Next With ActiveSheet.Shapes.AddConnector(msoConnectorStraight, xa, ya, xb, yb) .ConnectorFormat.BeginConnect o1, (bc + 6) Mod 8 + 1 .ConnectorFormat.EndConnect o2, (ec + 6) Mod 8 + 1 .Name = col.Cells(1) & "|" & col.Cells(4) End With End If Next End Sub
[/vba]
Здравствуйте. Можно как-то так [vba]Код
Sub Макрос1() Dim o1 As Shape, o2 As Shape Dim x1!, y1!, r1!, x2!, y2!, r2!, xa!, ya!, xb!, yb! Dim col As Range For Each col In [A3:E6].Columns On Error Resume Next Set o1 = ActiveSheet.Shapes(col.Cells(1)) Set o2 = ActiveSheet.Shapes(col.Cells(4)) If Not (o1 Is Nothing Or o2 Is Nothing) Then GetParam o1, x1, y1, r1 GetParam o2, x2, y2, r2 Dim i&, j&, p#, l!, lmin! Dim x1t!, y1t!, x2t!, y2t!, bc&, ec& p = Atn(1) lmin = [a65536].Top - [a1].Top For i = 0 To 7 x1t = x1 + Cos(p * i) * r1 y1t = y1 - Sin(p * i) * r1 For j = 0 To 7 x2t = x2 + Cos(p * j) * r2 y2t = y2 - Sin(p * j) * r2 l = Sqr((x1t - x2t) ^ 2 + (y1t - y2t) ^ 2) If l < lmin Then lmin = l xa = x1t ya = y1t xb = x2t yb = y2t bc = i ec = j End If Next Next With ActiveSheet.Shapes.AddConnector(msoConnectorStraight, xa, ya, xb, yb) .ConnectorFormat.BeginConnect o1, (bc + 6) Mod 8 + 1 .ConnectorFormat.EndConnect o2, (ec + 6) Mod 8 + 1 .Name = col.Cells(1) & "|" & col.Cells(4) End With End If Next End Sub
[/vba] krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Здравствуйте. Можно как-то так [vba]Код
Sub Макрос1() Dim o1 As Shape, o2 As Shape Dim x1!, y1!, r1!, x2!, y2!, r2!, xa!, ya!, xb!, yb! Dim col As Range For Each col In [A3:E6].Columns On Error Resume Next Set o1 = ActiveSheet.Shapes(col.Cells(1)) Set o2 = ActiveSheet.Shapes(col.Cells(4)) If Not (o1 Is Nothing Or o2 Is Nothing) Then GetParam o1, x1, y1, r1 GetParam o2, x2, y2, r2 Dim i&, j&, p#, l!, lmin! Dim x1t!, y1t!, x2t!, y2t!, bc&, ec& p = Atn(1) lmin = [a65536].Top - [a1].Top For i = 0 To 7 x1t = x1 + Cos(p * i) * r1 y1t = y1 - Sin(p * i) * r1 For j = 0 To 7 x2t = x2 + Cos(p * j) * r2 y2t = y2 - Sin(p * j) * r2 l = Sqr((x1t - x2t) ^ 2 + (y1t - y2t) ^ 2) If l < lmin Then lmin = l xa = x1t ya = y1t xb = x2t yb = y2t bc = i ec = j End If Next Next With ActiveSheet.Shapes.AddConnector(msoConnectorStraight, xa, ya, xb, yb) .ConnectorFormat.BeginConnect o1, (bc + 6) Mod 8 + 1 .ConnectorFormat.EndConnect o2, (ec + 6) Mod 8 + 1 .Name = col.Cells(1) & "|" & col.Cells(4) End With End If Next End Sub
[/vba] Автор - krosav4ig Дата добавления - 16.11.2018 в 04:41
krosav4ig
Дата: Пятница, 16.11.2018, 04:15 |
Сообщение № 656 | Тема: Формула суммы диапазона
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
ну почти без массива Код
=ЕСЛИОШИБКА(ЕСЛИ(И(ИНДЕКС(1:3;Ч(ИНДЕКС({1:3};));ПОИСКПОЗ("?*";B2:E2;)+1)="");СУММ(G3:ИНДЕКС(G:G;СТРОКА()+ЕСЛИОШИБКА(ПОИСКПОЗ(ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));0)-1;СЧЁТЗ(A:A))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
положения столбика с суммой изменяемое
чем и как оно меняется?
ну почти без массива Код
=ЕСЛИОШИБКА(ЕСЛИ(И(ИНДЕКС(1:3;Ч(ИНДЕКС({1:3};));ПОИСКПОЗ("?*";B2:E2;)+1)="");СУММ(G3:ИНДЕКС(G:G;СТРОКА()+ЕСЛИОШИБКА(ПОИСКПОЗ(ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));0)-1;СЧЁТЗ(A:A))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
положения столбика с суммой изменяемое
чем и как оно меняется? krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение ну почти без массива Код
=ЕСЛИОШИБКА(ЕСЛИ(И(ИНДЕКС(1:3;Ч(ИНДЕКС({1:3};));ПОИСКПОЗ("?*";B2:E2;)+1)="");СУММ(G3:ИНДЕКС(G:G;СТРОКА()+ЕСЛИОШИБКА(ПОИСКПОЗ(ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));0)-1;СЧЁТЗ(A:A))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
положения столбика с суммой изменяемое
чем и как оно меняется? Автор - krosav4ig Дата добавления - 16.11.2018 в 04:15
krosav4ig
Дата: Пятница, 16.11.2018, 04:07 |
Сообщение № 657 | Тема: Расчет нескольких условий в одной ячейке
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
до кучи Код
=СУММ(СЧЁТЕСЛИ(D3:AH3;"*"&ПОВТОР(AJ$3:AJ$15&"*";СТОЛБЕЦ(A:T)))*AK$3:AK$15)
до кучи Код
=СУММ(СЧЁТЕСЛИ(D3:AH3;"*"&ПОВТОР(AJ$3:AJ$15&"*";СТОЛБЕЦ(A:T)))*AK$3:AK$15)
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение до кучи Код
=СУММ(СЧЁТЕСЛИ(D3:AH3;"*"&ПОВТОР(AJ$3:AJ$15&"*";СТОЛБЕЦ(A:T)))*AK$3:AK$15)
Автор - krosav4ig Дата добавления - 16.11.2018 в 04:07
krosav4ig
Дата: Пятница, 16.11.2018, 00:37 |
Сообщение № 658 | Тема: Расчет нескольких условий в одной ячейке
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
Здравствуйте Так нужно(формула массива, вводится Ctrl+Shift+Enter)? Код
=СУММ(СЧЁТЕСЛИ(D3:AH3;"*"&AJ$3:AJ$15&"*")*AK$3:AK$15)
Здравствуйте Так нужно(формула массива, вводится Ctrl+Shift+Enter)? Код
=СУММ(СЧЁТЕСЛИ(D3:AH3;"*"&AJ$3:AJ$15&"*")*AK$3:AK$15)
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение Здравствуйте Так нужно(формула массива, вводится Ctrl+Shift+Enter)? Код
=СУММ(СЧЁТЕСЛИ(D3:AH3;"*"&AJ$3:AJ$15&"*")*AK$3:AK$15)
Автор - krosav4ig Дата добавления - 16.11.2018 в 00:37
krosav4ig
Дата: Четверг, 15.11.2018, 16:24 |
Сообщение № 659 | Тема: Формула суммы диапазона
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
lfuthobr , Вы думаете, что мы тут гадать должны, что у вас там за id, откуда он берется и как считается?Код
=ЕСЛИОШИБКА(ЕСЛИ(ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-3;4));0)<ПОИСКПОЗ("?*";$B4:ДВССЫЛ(АДРЕС(СТРОКА()+1;СТОЛБЕЦ()-3;4));0);СУММ(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1;4)):ИНДЕКС(СМЕЩ(H:H;0;-1);ЕСЛИОШИБКА(СТРОКА()+ПОИСКПОЗ("?*";ИНДЕКС($B4:ДВССЫЛ(АДРЕС(500;СТОЛБЕЦ()-2;4));;ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-2;4));));)-1;1+СЧЁТЗ(Id))));"")*ЕСЛИ($B3="";1;1,1*1,2);"")
до кучи, массивная формула (в H2, в ячейках ниже ваша формула)Код
=ЕСЛИОШИБКА(ЕСЛИ(СУММ((ДЛСТР(B2:E3)>0)*СТОЛБЕЦ(B2:E3)*{-1:1})>0;СУММ(G3:ИНДЕКС(G:G;СТРОКА()+МИН(ЕСЛИОШИБКА(ПОИСКПОЗ(ВЫБОР({1;2};ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";"яяя");A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));{0;1})-{1;0};""))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
lfuthobr , Вы думаете, что мы тут гадать должны, что у вас там за id, откуда он берется и как считается?Код
=ЕСЛИОШИБКА(ЕСЛИ(ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-3;4));0)<ПОИСКПОЗ("?*";$B4:ДВССЫЛ(АДРЕС(СТРОКА()+1;СТОЛБЕЦ()-3;4));0);СУММ(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1;4)):ИНДЕКС(СМЕЩ(H:H;0;-1);ЕСЛИОШИБКА(СТРОКА()+ПОИСКПОЗ("?*";ИНДЕКС($B4:ДВССЫЛ(АДРЕС(500;СТОЛБЕЦ()-2;4));;ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-2;4));));)-1;1+СЧЁТЗ(Id))));"")*ЕСЛИ($B3="";1;1,1*1,2);"")
до кучи, массивная формула (в H2, в ячейках ниже ваша формула)Код
=ЕСЛИОШИБКА(ЕСЛИ(СУММ((ДЛСТР(B2:E3)>0)*СТОЛБЕЦ(B2:E3)*{-1:1})>0;СУММ(G3:ИНДЕКС(G:G;СТРОКА()+МИН(ЕСЛИОШИБКА(ПОИСКПОЗ(ВЫБОР({1;2};ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";"яяя");A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));{0;1})-{1;0};""))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Четверг, 15.11.2018, 16:27
Ответить
Сообщение lfuthobr , Вы думаете, что мы тут гадать должны, что у вас там за id, откуда он берется и как считается?Код
=ЕСЛИОШИБКА(ЕСЛИ(ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-3;4));0)<ПОИСКПОЗ("?*";$B4:ДВССЫЛ(АДРЕС(СТРОКА()+1;СТОЛБЕЦ()-3;4));0);СУММ(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1;4)):ИНДЕКС(СМЕЩ(H:H;0;-1);ЕСЛИОШИБКА(СТРОКА()+ПОИСКПОЗ("?*";ИНДЕКС($B4:ДВССЫЛ(АДРЕС(500;СТОЛБЕЦ()-2;4));;ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-2;4));));)-1;1+СЧЁТЗ(Id))));"")*ЕСЛИ($B3="";1;1,1*1,2);"")
до кучи, массивная формула (в H2, в ячейках ниже ваша формула)Код
=ЕСЛИОШИБКА(ЕСЛИ(СУММ((ДЛСТР(B2:E3)>0)*СТОЛБЕЦ(B2:E3)*{-1:1})>0;СУММ(G3:ИНДЕКС(G:G;СТРОКА()+МИН(ЕСЛИОШИБКА(ПОИСКПОЗ(ВЫБОР({1;2};ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";"яяя");A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));{0;1})-{1;0};""))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
Автор - krosav4ig Дата добавления - 15.11.2018 в 16:24
krosav4ig
Дата: Четверг, 15.11.2018, 15:43 |
Сообщение № 660 | Тема: Подсчет формулой чисел для различных дат
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация:
997
±
Замечаний:
0% ±
Excel 2007,2010,2013
rotten41 , умножить на 1 через спецвставку и даты, и значения
rotten41 , умножить на 1 через спецвставку и даты, и значения
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение rotten41 , умножить на 1 через спецвставку и даты, и значения
Автор - krosav4ig Дата добавления - 15.11.2018 в 15:43