Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Excel FAQ (часть 6)

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

Открыть новую тему     Написать ответ в эту тему

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Просьба к посетителям топика дополнять шапку наиболее часто задаваемыми вопросами со ссылками на ответы
в обязательном порядке

 
  • Смена представления имен столбцов с буквенного на цифровое и обратно


    Сумма прописью
  • Надстройка "PROP" (сумма прописью)
  • надстройка Excellerator (c) Michael Zemlanukha & Maxim Shemanarev
  • макрос Num2String


  • Список соответствия имен функций в английской и русской версиях Excel или здесь
  • Описание Microsoft Excel File Format (eng.)
  • Горячие клавиши в Excel (табличка)
  • краткая, но емкая инструкция для чайников по добавлению готовых макросов (на примере макросов по увеличению размера шрифта на X пунктов от мемебера ferias
     
    Предыдущие ветки топика: Часть 1 | Часть 2 | Часть 3 | Часть 4| Часть 5
     
    Все вопросы по программированию (макросы, скрипты, пользовательские функции и т.п.) обсуждаются в теме Excel VBA в разделе Прикладное программирование.
     
    При необходимости выложить скриншот, пользуйтесь сервисом ImageShack® (ограничение на размер файла <1.5 Mb)
     
    Книга Джон Уокенбах "Подробное руководство по созданию формул в Microsoft Office Excel 2002" PDF 34МБ Файлы к книге

    Смежные темы:
    Программы » Microsoft Office 2019 & 365 | 2016 | 2013 | 2010 | 2007 | 2003
    Программы » OneNote | Outlook 2013 & 2016 & 2019 | Outlook 2010 | Microsoft Mathematics & Math Solver
    Программы » Word FAQ | Access FAQ
    Прикладное программирование » Word VBA | Excel VBA | Access VBA  
    Андеграунд » Microsoft Office 2019 | 2016 | 2013 | 2010 | 2007 | 2003
    Андеграунд » OneNote | Visio | SharePoint Server | Project Server | Exchange Server
    Андеграунд » Надстройки (add-ins) и коммерческие макросы Excel
    Андеграунд » Самостоятельная сборка дистрибутивов Оffice 2007/2010/2013/2016 | MUI для Office 2007

  • Всего записей: 37397 | Зарегистр. 26-02-2002 | Отправлено: 08:02 27-03-2018 | Исправлено: AlexDAT, 03:25 03-09-2020
    Nirva



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALeXkRU видимо я страшно далёк от EXCEL  )))))
     

    Цитата:
    сейчас попробую наваять чего..
     буду очень благодарен за помощь !

    Всего записей: 462 | Зарегистр. 18-07-2003 | Отправлено: 20:35 08-08-2018 | Исправлено: Nirva, 01:25 09-08-2018
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Nirva
    Цитата:
    страшно далёк  

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

    Всего записей: 11170 | Зарегистр. 03-12-2003 | Отправлено: 05:55 09-08-2018
    Nirva



    Full Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALeXkRU  мне бы научиться понимать эти формулы.. они для меня как тёмный лес ((  
    Огромное спасибо за оказанную помощь !
    Проверил - всё правильно считает !

    Всего записей: 462 | Зарегистр. 18-07-2003 | Отправлено: 07:04 09-08-2018
    RemikR



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Помогите с условным форматирование.
    Необходимо красить ячейки в зависимости от значения в верхней ячейке и значения в самой ячейке.
    Например ячейка А2 должна быть серой, если в ней стоит значение "0" (ноль), а в ячейке А1 - значение "В".
    Задаю формат формулой
    Код:
    =И(A1="В";A2=0)

    Проблема в том, что под буквой "В" красятся не только ячейки с нулём, но и пустые ячейки. Как этого избежать?
    Файл для примера: Ссылка

    Всего записей: 916 | Зарегистр. 16-10-2008 | Отправлено: 20:59 13-08-2018 | Исправлено: RemikR, 21:23 13-08-2018
    ALeXkRU



    Platinum Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RemikR
    Цитата:
    Как этого избежать?

    если ячейка пустая - её значение равно нулю. Он всё правильно красит
     
    попробуй так:

    Код:
    =И(A1="В";И(НЕ(ЕПУСТО(A2));A2=0))

    Всего записей: 11170 | Зарегистр. 03-12-2003 | Отправлено: 00:06 14-08-2018
    RemikR



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    ALeXkRU

    Цитата:
    Он всё правильно красит

    да я знаю что правильно, просто не знал как это обойти.
    Спасибо. Всё работает.

    Всего записей: 916 | Зарегистр. 16-10-2008 | Отправлено: 12:32 14-08-2018
    obtim



    Gold Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Помогите с формулой для следующей задачи:
    1. Есть столбец дат приема сотрудников на работу(тип: дата)
    2. Есть отдельная ячейка с датой составления отчета: меняется вручную. Тип: дата
    3. Есть столбец окладов: его не задействуем в формуле, просто для понимания задачи
    4. Есть столбец коэффициентов выслуги лет. На данным момент этот столбец изменяется вручную, по следующему принципу: если сотрудник отработал год в компании, то его коэффициент увеличивается на 5% (0,05-тип число). Максимум коэффициента - 50%, при условии, что сотрудник отработал в компании 10-ть лет(дальше коэффициент не растет).
    Вопрос: как написать формулу, чтобы она из текущей даты вычитала дату поступления сотрудника в компанию и формировала значение в ячейке коэффициентов?(думаю, что каждый раз надо формировать значение с 0-ля, т.к. в противном случае могут быть ошибки сложения)

    ----------
    Дьявол коварен - он может явиться к нам просто в образе дьявола

    Всего записей: 8635 | Зарегистр. 03-03-2002 | Отправлено: 12:10 19-08-2018
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    obtim
    для получения текущей даты есть функция =TODAY()
    если у тебя уже где-то прописана дата - то разницу можно найти например так =Today()-A2  (в этом случае в днях, так-же можно =Days(Today(),A2), можно конвертировать в месяцы или годы)
    или множеством других функций дат и различными преобразованиями
    как это использовать - уже зависит от алгоритма формирования твоего коэффициента.
    по твоему примеру допустим при начале 1 и росте по 5 процентных пункта за полный год (отформатировав ячейку на 2 десятичных знака):
    =1+(0.05*INT(YEARFRAC(А2,TODAY(),1)))

    Всего записей: 722 | Зарегистр. 10-11-2005 | Отправлено: 15:26 19-08-2018
    Nuke142



    Member
    Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
    Добрый день.  
    Есть ячейка с числом (13) и вторая с временем через двоеточие (10:02)  
    Как из них получить новую ячейку в виде 13.08.2018 10:02 ?  
    Сцепление мне выдает что 10 делится на 02 и дробным числом приписывается к дате.

    Всего записей: 301 | Зарегистр. 03-04-2008 | Отправлено: 13:16 26-08-2018 | Исправлено: Nuke142, 13:20 26-08-2018
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Nuke142
    Код:
    =TEXT(A1,"dd.mm.yyyy")&" "&TEXT(B1,"hh:mm")

    Всего записей: 722 | Зарегистр. 10-11-2005 | Отправлено: 16:54 27-08-2018
    RJ2k6



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Облазил много ссылок, но нужной так и не нашел. Хотел бы сделать своего рода генератор цифровых паролей. Но есть условия, которых в примерах, что предлагает гугль, нет. А именно:
    1. Нужна кнопка, чтобы можно было тыркать в нее, генерируя тем самым пароль.
    2. Пароль должен составляться только из указанного диапазона цифр в таблице. При этом одной цифрой может быть как однозначное число, так и двузначное.
    3. Цифры в пароле не должны быть одинаковыми. Т.е. 1 2 3 1 2 3 - не правильно, 1 2 3 4 5 6 - правильно.
    4. Количество цифр в пароле должно быть шесть.
    Может есть готовый скрипт чего-то подобного?

    Всего записей: 846 | Зарегистр. 25-07-2006 | Отправлено: 11:05 13-09-2018
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RJ2k6
     
    для скриптов есть тема по VBA (что было-бы намного точнее и чище, без вспомогательных столбцов).
    а так зависит от алгоритма реализации, например формулами можно сделать так:
    (будет вероятность больше  1:100'000'000'000'000 что может быть повтор и пропуск):
    1) у каждого значения сгенерировать случайное число
    2) отсортировать в зависимости от этого числа
    3) соединить отсортированные числа в результат.
     
    или если у тебя в диапазоне A2:A7 исходные данные (могут быть и текстовые)
    то поставив в диапазоне B2:B7 формулу массива =Rand()
    а в диапазоне C2:C7 формулу массива =INDEX(A2:A7,RANK(B2:B7,B2:B7))
    и в клетке B8 разделитель "-"
    можно получить результат в клетке B9 формулой =C2&B8&C3&B8&C4&B8&C5&B8&C6&B8&C7
     
    обновление (генерация новой комбинации) будет по кнопке Del на любой пустой клетке (например C8)
    (при автоматическом режиме подсчётов который стоит по умолчанию)
    по сути кнопка Del просто перезапускает генерацию Rand()
     
    Файл примера

    Всего записей: 722 | Зарегистр. 10-11-2005 | Отправлено: 14:06 16-09-2018 | Исправлено: vikkiv, 15:35 16-09-2018
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    RJ2k6
    но для исходного набора в 6 уникальных элементов у тебя будет всего-лишь 6^6=46'656 уникальных комбинаций паролей.
    если исходный набор больше шести - то решение немного другое.

    Всего записей: 722 | Зарегистр. 10-11-2005 | Отправлено: 15:31 17-09-2018
    RJ2k6



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vikkiv
    Да, по скриптам не увидел ссылку на другую тему. И спасибо за помощь! Именно то, что нужно. Никогда бы сам не додумался. Я там все ломал голову совсем в другом направлении) А шести цифр пока вполне достаточно.

    Всего записей: 846 | Зарегистр. 25-07-2006 | Отправлено: 16:27 17-09-2018
    Eric Lazzy



    Главный мент
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    камрады, помогите пожалуйста
    имеется диапазон текстовых значений.  
    к примеру, график дежурств:
    1 петя вова    
    2 петя вова    
    3 петя и вова витя

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

    ----------
    лень - двигатель прогресса ©

    Всего записей: 7839 | Зарегистр. 01-11-2003 | Отправлено: 09:30 18-09-2018
    vikkiv



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Eric Lazzy
    решается формулой =COUNTIF(диапазон,условие)
    в диапазон выделяешь весь диапазон в котором находятся значения
    в условиях пишешь выражение "*" & ссылку_на_клетку_списка & "*"
     
    например =COOUNTIF(A1:B3,"*"&"вова"&"*")

    Всего записей: 722 | Зарегистр. 10-11-2005 | Отправлено: 12:40 18-09-2018
    Eric Lazzy



    Главный мент
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    vikkiv
    спасибо
    про выражение со звёздочками не знал  
    получается - "*" = любое выражение. спасибо, запомню
     
    Добавлено:
    зы
    в напримере опечатка ОО ))

    ----------
    лень - двигатель прогресса ©

    Всего записей: 7839 | Зарегистр. 01-11-2003 | Отправлено: 13:35 18-09-2018
    seregadushka



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    а "?" -- любой один символ, тоже пригодится  -- это с молоком матери обычно

    Всего записей: 1395 | Зарегистр. 23-09-2007 | Отправлено: 08:29 05-10-2018
    Zombik007



    Silver Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    Добрый день, друзья.
    Есть формула, которая считает с накоплением количество записей по каждому человеку за каждый месяц.
     
    {=СУММ(ЕСЛИ($B$1:$B$351=$F$1;ЕСЛИ($A$1:$A$351<=$D1;1;0)))}
     
    Эта формула массива работает корректно (в файле выделено зеленым)
     
    Но недавно появилась необязательная, но все же идея как немного уменьшить формулу через логическое "И" (выделено желтым)
     
    {=СУММ(ЕСЛИ(И($F$1=$B$1:$B$350;$A$1:$A$351<=D1);1;0))}
     
    Но она почему-то не работает, выдает 0, уже голову сломал почему так?  
    Подскажите пожалуйста, что я не вижу или не знаю, заранее спасибо.
     
    Файл вот

    ----------
    Gigabyte B450 Aorus Pro, AMD Ryzen 5 2600 3.9 Ghz, Gigabyte RTX 2060 Super, 16 gb RAM

    Всего записей: 2806 | Зарегистр. 21-03-2007 | Отправлено: 09:51 06-10-2018 | Исправлено: Zombik007, 09:56 06-10-2018
    seregadushka



    Advanced Member
    Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
    у меня второй непонятный вопрос , как Excel пропустил недостаток аргументов для ЕСЛИ  ?
    =СУММ(ЕСЛИ($B$1:$B$351=$F$1;ЕСЛИ($A$1:$A$351<=$D3;1;0);0))
    Я про масссивы  редко слышу, тоже  не ясно. Должно все работать.

    Всего записей: 1395 | Зарегистр. 23-09-2007 | Отправлено: 11:42 06-10-2018
    Открыть новую тему     Написать ответ в эту тему

    Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

    Компьютерный форум Ru.Board » Компьютеры » Программы » Microsoft Excel FAQ (часть 6)


    Реклама на форуме Ru.Board.

    Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
    Modified by Ru.Board
    © Ru.Board 2000-2020

    BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

    Рейтинг.ru