Страницы: 1
RSS
Добавление в ячейку уже готовых форм текстовых предложений посредствам выбора из списка
 
добрый день, уважаемые гуру Екселя и не только)))
на работе столкнулись с очередной проблемой, занимающей много времени на исправление формулировок в заполнении отчета.
есть один отчет. в него несколько сотрудников вносят данные каждый по своим делам.
существует требование хаполнять определенный столбик "одинаково", чтоб было как у всех.
но многие или не хотят или лень или забили и вносят каждый по своему вручную информацию по делам.
в последствии приходится долго сидеть и все переделывать за всех.

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

пример я прикреплю к сообщению
в примере красным выделил те самые формулировки, причем более бордовым формулировки "на выбор" в зависимости от исхода дела.

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

пример текстом тут:
1) определение о принятии иск.заявления в порядке упрощенного производства (код - _____) -   24.11.16.
до 16.12.16 Ответчику предоставить Отзыв, до 13.01.17 Стороны вправе предоставить доп.документы;
или
- определение о принятии иска в общем порядке (дата)
2) Решение (резолют.часть)
- иск удовлетворить в полном объеме - 23.01.17;
или
иск удовлетворить частично  - дата
3) Ответчик подал ходатайство об изготовлении мотивированного решения -  25.01.17;
4) Мотивированное решение 01.02.17
- иск удовлетворить в полном объеме (опубликовано 02.02.17)
или
иск удовлетворить частично (дата)
 
А в раздел "Приемы" заходили? Там есть подборка статей про выпадающие списки - ни один из вариантов не подошёл?
 
не смотрел. спасибо. гляну
 
Как я посмотрел, - от такой "компьютаризации" для вас нет ничего хорошего,одна головная боль.
Всё это от неправильного использования возможностей компьютерных программ.
И помочь в таком деле практически не возможно.
-----
Ведь то, что вы пытаетесь сделать в Экселе, вы могли бы сделать в и Ворде и даже с большим успехом.
А ведь Эксель это в первую очередь ТАБЛИЦА с ячейками. Вы же все строчки дела "впихнули" в одну ячейку.
А можно было бы каждую часть 1),2),3),4)  хотя бы их распихать по разным ячейкам.
Но и это не "фонтан".
-----
Основные элементы вашего дела это ДАТЫ. Текстовая часть - она в основном постоянная для всех дел.

Посему ваши отчёты лучше всего оформить в виде таблицы с нужными датами.
Например на одном листе
столбик А-№пп
столбик В-код дела
столбик C-дата принятия иск.заяв
столбик D-дата Ответчику предоставить Отзыв
столбик E-дата Стороны вправе предоставить доп.документы
столбик F-дата определение о принятии иска в общем порядке
и т.д.
Эту таблицу (только даты) будут заполнять сотрудники. К тексту их не подпускайте.
На втором листе - ваш отчет в удобном для вас виде.
Тексты в нем уже набраны загодя,  а даты к этому тексту автоматически подтягиваются из первого листа с помощь функции =ВПР() .
На этом листе поменяли №пп - все даты стали соответствовать делу с этим номером.
------
А в таблице(это на первом листе) установите фильтры, и будите иметь возможность отображать(группировать) дела по датам.
Например хотите определиться по каким делам Ответчику предоставить Отзыв до 01/05/2017.
Включаете фильтр на столбике D с датой меньше 30/04/2017, на экране остаются только те дела где даты до 01/05/2017.
Вообщем - таблица будет вашей надёжной справкой.
------
А вот что печатать в отчете или - "иск удовлетворить в полном объеме" или - "иск удовлетворить частично"
будет автоматически определяться исходя из того где стоит дата в таблице на первом листе..
 
Valera2, я показал в примере лишь один столбик из всего отчета в котором столбиков штук 20ть и каждый для номера дела, даты подачи иска истец, ответчик, исход дела первая инстанция 3 столбика вторая и т.д.
у меня показан столбик так называемый "хронология дела" и добавлять еще столбики будет только хуже - это раз, во вторых форма отчета утверждена центральным аппаратом и опять же добавлять в нее новые столбики нельзя )))  
 
Цитата
Юрий М написал:
А в раздел "Приемы" заходили? Там есть подборка статей про выпадающие списки - ни один из вариантов не подошёл?
нашел, то что в принципе подходит:
Выпадающий список с мультивыбором, Вариант 3. С накоплением в той же ячейке http://www.planetaexcel.ru/techniques/1/181/
НО как всегда есть НО ))))
формулировки что красным я конечно сделал как выпадающий список и он добавляется через запятую в одну ячейку.
а вот даты которые сотрудники самостоятельно добавляют к этим формулировкам в эту ячейку уже не добавляются, т.к. список ограничен :(((((


чтоб добавлять изменения (даты и прочую информацию кроме готовых формулировок) сделал так:
Чтобы Excel позволил нам в будущем ввести в список и новые имена, снимем галочки на вкладках Сообщение для ввода (Input Message) и Сообщение об ошибке (Error Alert) и нажмем ОК.

теперь я могу добавить к выбранному из списка тексту дату например, НО ексель кроме этого полученного варианта через запятую снова добавляет выбранную формулировку(((


http://www.picshare.ru/view/7951174/
Изменено: lok888 - 03.03.2017 03:01:37
 
решение нашел на другом форуме.
кому интересно вот макрос, выполняющий то, что я хотел:
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Not Intersect(Target, Range("W:W")) Is Nothing And Target.Cells.Count = 1 Then
        Application.EnableEvents = False
        newval = Target
        Application.Undo
        oldval = Target
        If IsError(Application.WorksheetFunction.Match(newval, Range(Replace(Target.Validation.Formula1, "=", "")), 0))Then
            Target = newval
        Else
            If Len(oldval) <> 0 And oldval <> newval Then
                Target = Target & ";" & Chr(10) & " " & newval
            Else
                Target = newval
            End If
        End If
        If Len(newval) = 0 Then Target.ClearContents
        Application.EnableEvents = True
    End If
End Sub
Страницы: 1
Наверх