Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Записи участника (krosav4ig) - Мир MS Excel

Результаты поиска
krosav4ig Дата: Воскресенье, 01.02.2015, 00:28 | Сообщение № 1801 | Тема: Заполнение ячеек по двум и более условиям
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
СТ1
Код
=ЕСЛИОШИБКА(ПРОСМОТР(ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;);{0;9};ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;));"")

СТ2
Код
=ЕСЛИОШИБКА(ПРОСМОТР(ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;);{9;26};ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;));"")

СТ3
Код
=ЕСЛИОШИБКА(ПРОСМОТР(ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;);31;ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;));"")
К сообщению приложен файл: 4645852_2.xls (49.5 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Воскресенье, 01.02.2015, 00:45
 
Ответить
СообщениеСТ1
Код
=ЕСЛИОШИБКА(ПРОСМОТР(ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;);{0;9};ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;));"")

СТ2
Код
=ЕСЛИОШИБКА(ПРОСМОТР(ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;);{9;26};ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;));"")

СТ3
Код
=ЕСЛИОШИБКА(ПРОСМОТР(ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;);31;ВПР(A3;ДВССЫЛ(ТЕКСТ($D$1;"ММММ")&"!1:"&4^8);ДЕНЬ($D$1)+1;));"")

Автор - krosav4ig
Дата добавления - 01.02.2015 в 00:28
krosav4ig Дата: Суббота, 31.01.2015, 20:18 | Сообщение № 1802 | Тема: Конвертация зарплаты из каждые две недели в месячную
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
еще раз перечитал 6 пост, исправил свою формулу
Код
=ЕСЛИОШИБКА(СУММ((ЕСЛИОШИБКА(ВПР(ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+14;$A$2:$B$16;2;)*(17-G$3+ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1)))/14;)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+28;$A$2:$B$16;2;);)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+42;$A$2:$B$16;2;)*(КОНМЕСЯЦА(G$3;0)-30-ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1)))/14;))^{0;1})-1;"нет данных")

добавил формулу для бонусов и % (Массивная, вводится по Ctrl-Shift-Enter)
Код
=ЕСЛИОШИБКА(СУММ(СУММ((ЕСЛИ(ЕНД(ПОИСКПОЗ($A$2:$A$16;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1);))*((ДЕНЬНЕД($A$2:$A$16)<>6)+(ЕНЕЧЁТ(НОМНЕДЕЛИ(--$A$2:$A$16))));$A$2:$A$16;)>=G$3)*(ЕСЛИ(ЕНД(ПОИСКПОЗ($A$2:$A$16;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1);))*((ДЕНЬНЕД($A$2:$A$16)<>6)+(ЕНЕЧЁТ(НОМНЕДЕЛИ(--$A$2:$A$16))));$A$2:$A$16;)<=КОНМЕСЯЦА(G$3;0))*(($C$2:$C$16="%")*$B$3:$B$17*$B$2:$B$16%+($C$2:$C$16="bonus")*$B$2:$B$16))^{0;1})-1;"")


UPD.
добавил еще 1 файл, в нем добавил имена
К сообщению приложен файл: Book1-22-2-.xlsx (17.1 Kb) · Book1-22-3-.xlsx (16.8 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Суббота, 31.01.2015, 22:12
 
Ответить
Сообщениееще раз перечитал 6 пост, исправил свою формулу
Код
=ЕСЛИОШИБКА(СУММ((ЕСЛИОШИБКА(ВПР(ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+14;$A$2:$B$16;2;)*(17-G$3+ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1)))/14;)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+28;$A$2:$B$16;2;);)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+42;$A$2:$B$16;2;)*(КОНМЕСЯЦА(G$3;0)-30-ПРОСМОТР(G$3;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1)))/14;))^{0;1})-1;"нет данных")

добавил формулу для бонусов и % (Массивная, вводится по Ctrl-Shift-Enter)
Код
=ЕСЛИОШИБКА(СУММ(СУММ((ЕСЛИ(ЕНД(ПОИСКПОЗ($A$2:$A$16;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1);))*((ДЕНЬНЕД($A$2:$A$16)<>6)+(ЕНЕЧЁТ(НОМНЕДЕЛИ(--$A$2:$A$16))));$A$2:$A$16;)>=G$3)*(ЕСЛИ(ЕНД(ПОИСКПОЗ($A$2:$A$16;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(G$3;-МЕСЯЦ(G$3));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1);))*((ДЕНЬНЕД($A$2:$A$16)<>6)+(ЕНЕЧЁТ(НОМНЕДЕЛИ(--$A$2:$A$16))));$A$2:$A$16;)<=КОНМЕСЯЦА(G$3;0))*(($C$2:$C$16="%")*$B$3:$B$17*$B$2:$B$16%+($C$2:$C$16="bonus")*$B$2:$B$16))^{0;1})-1;"")


UPD.
добавил еще 1 файл, в нем добавил имена

Автор - krosav4ig
Дата добавления - 31.01.2015 в 20:18
krosav4ig Дата: Пятница, 30.01.2015, 20:51 | Сообщение № 1803 | Тема: Конвертация зарплаты из каждые две недели в месячную
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
формулы исправил, добавил динамические ссылки, но у вас по-моему есть ошибки в исходных данных (выделил красным), в одном месте (в 7 строке) неправильный день недели и нечетный номер недели (если вы платите со второй недели через две, то должна быть четная) из-за этого формула Александра (_Boroda_) некорректно считает значение из этой строки, причем в два месяца. В другом месте тоже неправильный день недели и нечетный номер недели, в обоих местах стоит пометка ps

прочитайте мой предыдущий пост, вы могли его не заметить
К сообщению приложен файл: Book1-23-1.xlsx (10.7 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Пятница, 30.01.2015, 20:53
 
Ответить
Сообщениеформулы исправил, добавил динамические ссылки, но у вас по-моему есть ошибки в исходных данных (выделил красным), в одном месте (в 7 строке) неправильный день недели и нечетный номер недели (если вы платите со второй недели через две, то должна быть четная) из-за этого формула Александра (_Boroda_) некорректно считает значение из этой строки, причем в два месяца. В другом месте тоже неправильный день недели и нечетный номер недели, в обоих местах стоит пометка ps

прочитайте мой предыдущий пост, вы могли его не заметить

Автор - krosav4ig
Дата добавления - 30.01.2015 в 20:51
krosav4ig Дата: Пятница, 30.01.2015, 19:51 | Сообщение № 1804 | Тема: Конвертация зарплаты из каждые две недели в месячную
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
RMMMM, в 2007, но в файле xls не формула не введется, нужен формат xlsx


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеRMMMM, в 2007, но в файле xls не формула не введется, нужен формат xlsx

Автор - krosav4ig
Дата добавления - 30.01.2015 в 19:51
krosav4ig Дата: Пятница, 30.01.2015, 19:47 | Сообщение № 1805 | Тема: Конвертация зарплаты из каждые две недели в месячную
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
RMMMM, расписал свою формулу, посмотрите, вдруг правильно считает (у меня считается сумма за дни месяца предшествующие дню оплаты)
К сообщению приложен файл: Book1-22-1-.xlsx (15.8 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Пятница, 30.01.2015, 19:50
 
Ответить
СообщениеRMMMM, расписал свою формулу, посмотрите, вдруг правильно считает (у меня считается сумма за дни месяца предшествующие дню оплаты)

Автор - krosav4ig
Дата добавления - 30.01.2015 в 19:47
krosav4ig Дата: Пятница, 30.01.2015, 18:32 | Сообщение № 1806 | Тема: Конвертация зарплаты из каждые две недели в месячную
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
RMMMM, совсем забыл, эта формула
Код
=СУММПРОИЗВ(ЕСЛИ(ЕНД(ПОИСКПОЗ($A$1:$A$15;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(I2;-МЕСЯЦ(I2));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1);));;$B$1:$B$15)*((КОНМЕСЯЦА($A1:$A15+2;-1)+1=I$2)*ТЕКСТ(ДЕНЬ($A1:$A15+2);"[>14]14;0")+(КОНМЕСЯЦА($A1:$A15-12;-1)+1=I$2)*($A1:$A15+2>КОНМЕСЯЦА(I$2;0))*(КОНМЕСЯЦА(I$2;0)-$A1:$A15+12))/14)

массивная, для корректного расчета должна вводиться комбинацией Ctrl+Shift+Enter (выделил ее оранжевым), в файле я расписал на примере декабря как эта формула считается без столбца C
К сообщению приложен файл: Book1-22-.xlsx (15.1 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Пятница, 30.01.2015, 18:48
 
Ответить
СообщениеRMMMM, совсем забыл, эта формула
Код
=СУММПРОИЗВ(ЕСЛИ(ЕНД(ПОИСКПОЗ($A$1:$A$15;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(I2;-МЕСЯЦ(I2));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1);));;$B$1:$B$15)*((КОНМЕСЯЦА($A1:$A15+2;-1)+1=I$2)*ТЕКСТ(ДЕНЬ($A1:$A15+2);"[>14]14;0")+(КОНМЕСЯЦА($A1:$A15-12;-1)+1=I$2)*($A1:$A15+2>КОНМЕСЯЦА(I$2;0))*(КОНМЕСЯЦА(I$2;0)-$A1:$A15+12))/14)

массивная, для корректного расчета должна вводиться комбинацией Ctrl+Shift+Enter (выделил ее оранжевым), в файле я расписал на примере декабря как эта формула считается без столбца C

Автор - krosav4ig
Дата добавления - 30.01.2015 в 18:32
krosav4ig Дата: Пятница, 30.01.2015, 11:53 | Сообщение № 1807 | Тема: Конвертация зарплаты из каждые две недели в месячную
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
укоротил свою формулу
Код
=ЕСЛИОШИБКА(СУММ((ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+14;Sheet1!$A$1:$B$15;2;)*(14-B1+ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1)))/14;)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+28;Sheet1!$A$1:$B$15;2;);)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+42;Sheet1!$A$1:$B$15;2;)*(14-(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+42-КОНМЕСЯЦА(B1;0))+1)/14;))^{0;1})-1;"нет данных")


подсмотрел формулу у Александра (_Boroda_) переписал так, для работы не нужен столбец C
Код
=СУММПРОИЗВ(ЕСЛИ(ЕНД(ПОИСКПОЗ($A$1:$A$15;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(I2;-МЕСЯЦ(I2));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1);));;$B$1:$B$15)*((КОНМЕСЯЦА($A1:$A15+2;-1)+1=I$2)*ТЕКСТ(ДЕНЬ($A1:$A15+2);"[>14]14;0")+(КОНМЕСЯЦА($A1:$A15-12;-1)+1=I$2)*($A1:$A15+2>КОНМЕСЯЦА(I$2;0))*(КОНМЕСЯЦА(I$2;0)-$A1:$A15+12))/14)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеукоротил свою формулу
Код
=ЕСЛИОШИБКА(СУММ((ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+14;Sheet1!$A$1:$B$15;2;)*(14-B1+ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1)))/14;)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+28;Sheet1!$A$1:$B$15;2;);)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+42;Sheet1!$A$1:$B$15;2;)*(14-(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1))+42-КОНМЕСЯЦА(B1;0))+1)/14;))^{0;1})-1;"нет данных")


подсмотрел формулу у Александра (_Boroda_) переписал так, для работы не нужен столбец C
Код
=СУММПРОИЗВ(ЕСЛИ(ЕНД(ПОИСКПОЗ($A$1:$A$15;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(I2;-МЕСЯЦ(I2));0);"d")/7)*7+6+14*(СТРОКА($1:$28)-1);));;$B$1:$B$15)*((КОНМЕСЯЦА($A1:$A15+2;-1)+1=I$2)*ТЕКСТ(ДЕНЬ($A1:$A15+2);"[>14]14;0")+(КОНМЕСЯЦА($A1:$A15-12;-1)+1=I$2)*($A1:$A15+2>КОНМЕСЯЦА(I$2;0))*(КОНМЕСЯЦА(I$2;0)-$A1:$A15+12))/14)

Автор - krosav4ig
Дата добавления - 30.01.2015 в 11:53
krosav4ig Дата: Пятница, 30.01.2015, 03:06 | Сообщение № 1808 | Тема: Конвертация зарплаты из каждые две недели в месячную
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
у мну такая формула получилась, только я трех дней в январе не досчитался...
Код
=ЕСЛИОШИБКА(СУММ((ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1))+14;Sheet1!$A$1:$B$15;2;)*(14-B1+ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1)))/14;)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1))+28;Sheet1!$A$1:$B$15;2;);)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1))+42;Sheet1!$A$1:$B$15;2;)*(14-(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1))+42-КОНМЕСЯЦА(B1;0))+1)/14;))^{0;1})-1;"нет данных")
К сообщению приложен файл: 0279430.xlsx (11.3 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеу мну такая формула получилась, только я трех дней в январе не досчитался...
Код
=ЕСЛИОШИБКА(СУММ((ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1))+14;Sheet1!$A$1:$B$15;2;)*(14-B1+ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1)))/14;)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1))+28;Sheet1!$A$1:$B$15;2;);)+ЕСЛИОШИБКА(ВПР(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1))+42;Sheet1!$A$1:$B$15;2;)*(14-(ПРОСМОТР(B1;ЦЕЛОЕ(РАЗНДАТ(6;КОНМЕСЯЦА(ДАТАМЕС(B1;-МЕСЯЦ(B1)-12*(МЕСЯЦ(B1)=1));0);"d")/7)*7+20+14*(СТРОКА($1:$26)-1))+42-КОНМЕСЯЦА(B1;0))+1)/14;))^{0;1})-1;"нет данных")

Автор - krosav4ig
Дата добавления - 30.01.2015 в 03:06
krosav4ig Дата: Пятница, 30.01.2015, 00:02 | Сообщение № 1809 | Тема: Максимальное значение каждой строки в диапазоне.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
можно в модуль листа такой код написать
[vba]
Код
Private Sub Worksheet_Calculate()
      Dim rrow As Range
      With Application: .ScreenUpdating = 0: .EnableEvents = 0:: .Calculation = xlCalculationManual
      For Each rrow In Intersect(ActiveSheet.UsedRange, [C:E]).Rows
          rrow.Offset(, 3).Resize(, 1).Formula = "=MAX(" & rrow.Address & ")"
      Next
      .Calculation = xlCalculationAutomatic: .ScreenUpdating = 1: .EnableEvents = 1: End With
End Sub
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Пятница, 30.01.2015, 00:07
 
Ответить
Сообщениеможно в модуль листа такой код написать
[vba]
Код
Private Sub Worksheet_Calculate()
      Dim rrow As Range
      With Application: .ScreenUpdating = 0: .EnableEvents = 0:: .Calculation = xlCalculationManual
      For Each rrow In Intersect(ActiveSheet.UsedRange, [C:E]).Rows
          rrow.Offset(, 3).Resize(, 1).Formula = "=MAX(" & rrow.Address & ")"
      Next
      .Calculation = xlCalculationAutomatic: .ScreenUpdating = 1: .EnableEvents = 1: End With
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 30.01.2015 в 00:02
krosav4ig Дата: Четверг, 29.01.2015, 12:49 | Сообщение № 1810 | Тема: "Длинная" формула, как правильно округлить?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Калькулятор китайский
видимо сильно китайский, у мну тоже китайский, поставил ограничение 2 знака результат - 641.15. Вы своему помощнику судьи покажите такой фокус: на компе скопируйте в буфер обмена строку ((36076,59-20000)*0,03+800)/2 , запустите калькулятор и нажмите Ctrl+V>Enter

ЗЫ
для разнообразия формула
Код
=ЕСЛИ(AO5;ОКРУГЛ(МИН(ВЫБОР(МИН(СЧЁТ(1/(AO5>10^{4;5;6}*{1:2}));5)+1;200;AO5*0,04/2;((AO5-20000)*0,03+800)/2;((AO5-100000)*0,02+3200)/2;((AO5-200000)*0,01+5200)/2;((AO5-1000000)*0,005+13200)/2);60000);2);"")


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Четверг, 29.01.2015, 12:50
 
Ответить
Сообщение
Калькулятор китайский
видимо сильно китайский, у мну тоже китайский, поставил ограничение 2 знака результат - 641.15. Вы своему помощнику судьи покажите такой фокус: на компе скопируйте в буфер обмена строку ((36076,59-20000)*0,03+800)/2 , запустите калькулятор и нажмите Ctrl+V>Enter

ЗЫ
для разнообразия формула
Код
=ЕСЛИ(AO5;ОКРУГЛ(МИН(ВЫБОР(МИН(СЧЁТ(1/(AO5>10^{4;5;6}*{1:2}));5)+1;200;AO5*0,04/2;((AO5-20000)*0,03+800)/2;((AO5-100000)*0,02+3200)/2;((AO5-200000)*0,01+5200)/2;((AO5-1000000)*0,005+13200)/2);60000);2);"")

Автор - krosav4ig
Дата добавления - 29.01.2015 в 12:49
krosav4ig Дата: Среда, 28.01.2015, 17:03 | Сообщение № 1811 | Тема: Перевод дней в годы и месяцы
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
julytt, а можно так?
Код
=РАЗНДАТ(;B1;"y")

Код
=РАЗНДАТ(;B1;"ym")

Код
=РАЗНДАТ(;B1;"md")
К сообщению приложен файл: 9968552.xlsx (8.7 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеjulytt, а можно так?
Код
=РАЗНДАТ(;B1;"y")

Код
=РАЗНДАТ(;B1;"ym")

Код
=РАЗНДАТ(;B1;"md")

Автор - krosav4ig
Дата добавления - 28.01.2015 в 17:03
krosav4ig Дата: Среда, 28.01.2015, 14:47 | Сообщение № 1812 | Тема: Как в Excel (VBA) выделить 10 строк?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
вместо [vba]
Код
Application.ScreenUpdating = False
[/vba] (в начале кода)

[vba]
Код
With Application: .ScreenUpdating = 0: .EnableEvents = 0: .DisplayAlerts = 0
[/vba]

вместо [vba]
Код
Application.ScreenUpdating = False
[/vba] (в конце кода. кстати, почему False? вы уже отключили обновление экрана в начале кода, тут нужно его включить (True). Вас спасает только то, что при завершении работы макроса обновление экрана автоматически включается)

[vba]
Код
.ScreenUpdating = 1: .EnableEvents = 1: .DisplayAlerts = 1: End With
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Среда, 28.01.2015, 15:21
 
Ответить
Сообщениевместо [vba]
Код
Application.ScreenUpdating = False
[/vba] (в начале кода)

[vba]
Код
With Application: .ScreenUpdating = 0: .EnableEvents = 0: .DisplayAlerts = 0
[/vba]

вместо [vba]
Код
Application.ScreenUpdating = False
[/vba] (в конце кода. кстати, почему False? вы уже отключили обновление экрана в начале кода, тут нужно его включить (True). Вас спасает только то, что при завершении работы макроса обновление экрана автоматически включается)

[vba]
Код
.ScreenUpdating = 1: .EnableEvents = 1: .DisplayAlerts = 1: End With
[/vba]

Автор - krosav4ig
Дата добавления - 28.01.2015 в 14:47
krosav4ig Дата: Среда, 28.01.2015, 12:52 | Сообщение № 1813 | Тема: Условное форматирование по выражению
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
[vba]
Код
    With tmpRange.Offset(, -6).FormatConditions 'дополнительно подсвечиваем даты из 1-ого Столбца
          .Delete
          With .Add(2, , "=ЕОШИБКА(ВПР(RC;Диапазон_3;2;))")
              .Interior.Color = RGB(204, 204, 153)
          End With
      End With
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Среда, 28.01.2015, 12:59
 
Ответить
Сообщение[vba]
Код
    With tmpRange.Offset(, -6).FormatConditions 'дополнительно подсвечиваем даты из 1-ого Столбца
          .Delete
          With .Add(2, , "=ЕОШИБКА(ВПР(RC;Диапазон_3;2;))")
              .Interior.Color = RGB(204, 204, 153)
          End With
      End With
[/vba]

Автор - krosav4ig
Дата добавления - 28.01.2015 в 12:52
krosav4ig Дата: Вторник, 27.01.2015, 20:29 | Сообщение № 1814 | Тема: Поиск соответствующих значений и суммирование.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
может я чего-то не так понял, но вот что у мну получилось
[vba]
Код
Option Explicit
Function FilenamesCollection(ByVal FolderPath As String, Optional ByVal Mask As String = "", _
                     Optional ByVal SearchDeep As Long = 999) As Collection
      Dim FSO As Object
      Set FilenamesCollection = New Collection
      Set FSO = CreateObject("Scripting.FileSystemObject")
      GetAllFileNamesUsingFSO FolderPath, Mask, FSO, FilenamesCollection, SearchDeep
      Set FSO = Nothing
End Function
Function GetAllFileNamesUsingFSO(ByVal FolderPath As String, ByVal Mask As String, ByRef FSO, _
                     ByRef FileNamesColl As Collection, ByVal SearchDeep As Long)
      Dim curfold As Object, fil As Object, sfol As Object
      On Error Resume Next: Set curfold = FSO.GetFolder(FolderPath)
      If Not curfold Is Nothing Then
          For Each fil In curfold.Files
              If fil.Name Like "*" & Mask Then FileNamesColl.Add fil
          Next
          SearchDeep = SearchDeep - 1
          If SearchDeep Then
              For Each sfol In curfold.SubFolders
                  GetAllFileNamesUsingFSO sfol.path, Mask, FSO, FileNamesColl, SearchDeep
              Next
          End If
          Set fil = Nothing: Set curfold = Nothing
      End If
End Function

Sub sdf()
        Dim con As New ADODB.Connection
        Dim RS  As New ADODB.Recordset
        Dim coll As Collection
        Dim ObjFile As Object
        Dim FilePath$, path$, ConnectionString$
        ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.path & ";Extended Properties=dBASE IV"
        'ConnectionString = "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & ThisWorkbook.path
        con.Open ConnectionString$
        con.Execute "create table atable (name Text(50), cnt long)"
        For Each ObjFile In FilenamesCollection(ThisWorkbook.path, ".dbf", 2)
          FilePath = ObjFile.path: path$ = Replace(FilePath, ObjFile.Name, "")
          con.Execute "INSERT INTO atable SELECT Field1 as name, sum(Field2) as cnt From " & ObjFile.Name & " IN '" & path & "' [Dbase IV;DATABASE=" & FilePath & "] group by Field1"
        Next
        RS.Open "select name, sum(cnt) as sumcnt from atable group by name", con, 3, 3
        [A1].CopyFromRecordset RS
        RS.Close
        con.Execute "drop table atable"
        con.Close
        Set con = Nothing: Set RS = Nothing
End Sub
[/vba]
К сообщению приложен файл: qwe.zip (21.6 Kb)


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Вторник, 27.01.2015, 20:36
 
Ответить
Сообщениеможет я чего-то не так понял, но вот что у мну получилось
[vba]
Код
Option Explicit
Function FilenamesCollection(ByVal FolderPath As String, Optional ByVal Mask As String = "", _
                     Optional ByVal SearchDeep As Long = 999) As Collection
      Dim FSO As Object
      Set FilenamesCollection = New Collection
      Set FSO = CreateObject("Scripting.FileSystemObject")
      GetAllFileNamesUsingFSO FolderPath, Mask, FSO, FilenamesCollection, SearchDeep
      Set FSO = Nothing
End Function
Function GetAllFileNamesUsingFSO(ByVal FolderPath As String, ByVal Mask As String, ByRef FSO, _
                     ByRef FileNamesColl As Collection, ByVal SearchDeep As Long)
      Dim curfold As Object, fil As Object, sfol As Object
      On Error Resume Next: Set curfold = FSO.GetFolder(FolderPath)
      If Not curfold Is Nothing Then
          For Each fil In curfold.Files
              If fil.Name Like "*" & Mask Then FileNamesColl.Add fil
          Next
          SearchDeep = SearchDeep - 1
          If SearchDeep Then
              For Each sfol In curfold.SubFolders
                  GetAllFileNamesUsingFSO sfol.path, Mask, FSO, FileNamesColl, SearchDeep
              Next
          End If
          Set fil = Nothing: Set curfold = Nothing
      End If
End Function

Sub sdf()
        Dim con As New ADODB.Connection
        Dim RS  As New ADODB.Recordset
        Dim coll As Collection
        Dim ObjFile As Object
        Dim FilePath$, path$, ConnectionString$
        ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ThisWorkbook.path & ";Extended Properties=dBASE IV"
        'ConnectionString = "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & ThisWorkbook.path
        con.Open ConnectionString$
        con.Execute "create table atable (name Text(50), cnt long)"
        For Each ObjFile In FilenamesCollection(ThisWorkbook.path, ".dbf", 2)
          FilePath = ObjFile.path: path$ = Replace(FilePath, ObjFile.Name, "")
          con.Execute "INSERT INTO atable SELECT Field1 as name, sum(Field2) as cnt From " & ObjFile.Name & " IN '" & path & "' [Dbase IV;DATABASE=" & FilePath & "] group by Field1"
        Next
        RS.Open "select name, sum(cnt) as sumcnt from atable group by name", con, 3, 3
        [A1].CopyFromRecordset RS
        RS.Close
        con.Execute "drop table atable"
        con.Close
        Set con = Nothing: Set RS = Nothing
End Sub
[/vba]

Автор - krosav4ig
Дата добавления - 27.01.2015 в 20:29
krosav4ig Дата: Понедельник, 26.01.2015, 19:06 | Сообщение № 1815 | Тема: Поиск соответствующих значений и суммирование.
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
имхо лучше копать в сторону adodb, суммировать запросом например [vba]
Код
SELECT Таблица1.Поле1, SUM(Таблица1.Поле2) FROM Таблица1 group by Таблица1.Поле1
[/vba], и уже результат запроса выгружать на лист


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Понедельник, 26.01.2015, 19:06
 
Ответить
Сообщениеимхо лучше копать в сторону adodb, суммировать запросом например [vba]
Код
SELECT Таблица1.Поле1, SUM(Таблица1.Поле2) FROM Таблица1 group by Таблица1.Поле1
[/vba], и уже результат запроса выгружать на лист

Автор - krosav4ig
Дата добавления - 26.01.2015 в 19:06
krosav4ig Дата: Понедельник, 26.01.2015, 17:40 | Сообщение № 1816 | Тема: Как в Excel (VBA) выделить 10 строк?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
Я там тоже отписался

чего-то не заметно, да и ни тут, ни тут, ссылок на эту тему замечено не было, ни тут не были опубликованы эти ссылки.


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Понедельник, 26.01.2015, 17:43
 
Ответить
Сообщение
Я там тоже отписался

чего-то не заметно, да и ни тут, ни тут, ссылок на эту тему замечено не было, ни тут не были опубликованы эти ссылки.

Автор - krosav4ig
Дата добавления - 26.01.2015 в 17:40
krosav4ig Дата: Понедельник, 26.01.2015, 17:12 | Сообщение № 1817 | Тема: Как в Excel (VBA) выделить 10 строк?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
RAN, написал [vba]
Код
ActiveWorkbook.SaveAs Filename:= environ("homepath")&"\1 2", FileFormat:=xlWorkbookNormal
[/vba], получил файл "1 2.xls", может быть у вас другая сборка была


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
СообщениеRAN, написал [vba]
Код
ActiveWorkbook.SaveAs Filename:= environ("homepath")&"\1 2", FileFormat:=xlWorkbookNormal
[/vba], получил файл "1 2.xls", может быть у вас другая сборка была

Автор - krosav4ig
Дата добавления - 26.01.2015 в 17:12
krosav4ig Дата: Понедельник, 26.01.2015, 16:54 | Сообщение № 1818 | Тема: Как в Excel (VBA) выделить 10 строк?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
без расширения

ниче незнаю, пишу в immediate[vba]
Код
ActiveWorkbook.SaveAs Filename:= environ("homepath")&"\1 2", FileFormat:=6
[/vba], получаю файл "1 2.csv" в корневой папке пользователя :p
[p.s.]Excel - 2007 12.0.4518.1014
ОС - Microsoft Windows Professional SP3 Vol 2600.xpsp_sp3_qfe.130704-0421[/p.s.]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение
без расширения

ниче незнаю, пишу в immediate[vba]
Код
ActiveWorkbook.SaveAs Filename:= environ("homepath")&"\1 2", FileFormat:=6
[/vba], получаю файл "1 2.csv" в корневой папке пользователя :p
[p.s.]Excel - 2007 12.0.4518.1014
ОС - Microsoft Windows Professional SP3 Vol 2600.xpsp_sp3_qfe.130704-0421[/p.s.]

Автор - krosav4ig
Дата добавления - 26.01.2015 в 16:54
krosav4ig Дата: Понедельник, 26.01.2015, 12:34 | Сообщение № 1819 | Тема: Как в Excel (VBA) выделить 10 строк?
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
смотрите мой пост, там документы именуются правильно
или у себя замените [vba]
Код
"C:\Users\Desktop\list" & i & ".csv"
[/vba] на [vba]
Код
"C:\Users\Desktop\list" & i \ 10 & ".csv"
[/vba]
почему у вас
FileFormat:=xlNormal
если

Тут же черным по белому написано, что CSV это xlCSV или 6, а вы сохраняете книгу excel 97-2003 с расширением csv. При правильном указании формата расширение указывать не обязательно, т.е.
[vba]
Код
ActiveWorkbook.SaveAs Filename:= "C:\Users\Desktop\list" & i \ 10, FileFormat:=6
[/vba]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460

Сообщение отредактировал krosav4ig - Понедельник, 26.01.2015, 14:08
 
Ответить
Сообщениесмотрите мой пост, там документы именуются правильно
или у себя замените [vba]
Код
"C:\Users\Desktop\list" & i & ".csv"
[/vba] на [vba]
Код
"C:\Users\Desktop\list" & i \ 10 & ".csv"
[/vba]
почему у вас
FileFormat:=xlNormal
если

Тут же черным по белому написано, что CSV это xlCSV или 6, а вы сохраняете книгу excel 97-2003 с расширением csv. При правильном указании формата расширение указывать не обязательно, т.е.
[vba]
Код
ActiveWorkbook.SaveAs Filename:= "C:\Users\Desktop\list" & i \ 10, FileFormat:=6
[/vba]

Автор - krosav4ig
Дата добавления - 26.01.2015 в 12:34
krosav4ig Дата: Понедельник, 26.01.2015, 02:07 | Сообщение № 1820 | Тема: Ввод данных в таблицу на разных листах
Группа: Друзья
Ранг: Старожил
Сообщений: 2348
Репутация: 997 ±
Замечаний: 0% ±

Excel 2007,2010,2013
[offtop]
Надеюсь "ротом" это "потом", а не "ртом"?
и не рогом :D [/offtop]


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщение[offtop]
Надеюсь "ротом" это "потом", а не "ртом"?
и не рогом :D [/offtop]

Автор - krosav4ig
Дата добавления - 26.01.2015 в 02:07
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2026 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!