Страницы: 1 2 След.
RSS
Выпадающий список в виде "чекбоксов", ...а также вызов выпадающего списка через кнопку...
 
Добрый вечер!

Про анализировав большой объем информации подобного решения не нашел, поэтому обращаюсь к Вам как к профессионалам и прощу помощи!
чтобы не быть многословным, сделал скрин что необходимо сдлать:
что то подобное нашел тут (Вариант 3. С накоплением в той же ячейке): http://www.planetaexcel.ru/techniques/1/181/
Большое спасибо!

з.ы. файл исходник прилагаю!  
Изменено: iskatel - 01.08.2015 00:13:30
 
Совсем недавно тема была.
 
по первому пункту:
- при выборе значений, они должны записыватся в одну ячейку и через запятую ","
по втрому пункту
- выбранное значение должно записываться в конце содержимого ячейки
--
С уважением
Изменено: iskatel - 01.08.2015 00:25:10
 
Чем второй пункт отличается от первого и где эти пункты? Записать в одну ячейку не проблема. Но в какую? Я про свой файл-пример говорю )
 
Юрий, признаться честно, если бы для меня была это не проблема, я бы не обращался за помощью)
Изменено: iskatel - 31.07.2015 23:57:18
 
Так я и пытаюсь помочь ) Но мне непонятно - про какие пункты Вы говорите - где эти пункты? В какую ячейку должны собираться данные?  
 
т.е. если я поставил курсор на любую ячейку в столбце "С", например "С4" то чтобы вылезло окно с чекбоксами, я выбрал какие нужно категории, и они прописались в эту же ячейку, через запятую (я вроде тут - https://yadi.sk/i/TDTeSOmLiCvGV так и пояснил). Спасибо!    
Изменено: iskatel - 31.07.2015 23:57:34
 
iskatel, Вы заметили, что я отвечаю Вам без цитирования? Понятно, к кому я обращаюсь и на какие вопросы я отвечаю? А зачем Вы цитируете меня? Исправьте свои сообщения. А я пока набросаю пример.
 
Юрий М, ок, спасибо! а по поводу цитирования, то привычка форумная)
 
Так хотели?  
 
Все верно, а как чтобы на одном листе выполнялось два таких макроса, т.е. мне в ячейке "С" нужно сделать выбор "Категории" а в ячейке "Е" добавить выбранную строку в чекбоксе (в конце содержимого текущей ячейки)
вот если можно в моем файле, пожалуйста

и можно сделать выбор в ячейке "С" без кнопки "Записать", а просто поставил чекбоксы и потом курсор на любую ячейку и он сохраняет
Изменено: iskatel - 01.08.2015 00:25:35
 
Чтобы список (один и тот же) применялся к двум столбцам, нужно в  макросе изменить контролируемый диапазон (правый клик по ярлычку листа - исходный текст). Если выпадающие списки для столбцов разные - нужно рисовать второй ЛистБокс.
Можно и без кнопки, если на неё трудно нажимать)) Но сейчас я исчезаю - завтра на суточное дежурство. Подождите - может кто и доделает... Но лучше самому попробовать - пригодится в жизни.  ))
 
Юрий М,
надеюсь с выбором в ячейке "С" разберусь , но как быть с ячейкой "Е" в которой будет идти текст, а после нажатия кнопки "Состав" чтобы появлялись чекбоксы, происходил выбор и данный вобор добавлялся в конец содержимого текущей ячейки, как показано на картинке.

Юрий, буду рад вашей помощи завтра! Спасибо!
 
Сделайте МАЛЕНЬКИЙ пример на основе моего файла и поясните, откуда брать данные для второго списка.
И ещё - нужна ли кнопка "Состав", или делать аналогично - по активации ячейки?
 
Юрий М,
Юрий М,
Пример файла можно взять выше. Для второго списка данных будет не много, там можно на втором листе перечислять этих пять составов и все, и вот во втором списке нужна будет кнопка, потому что сначала вручную будет писаться текст, и когда нужно будет в эту ячейку дописать состав, то нужно нажать на кнопку Состав, выбрать и потом кликнуть на любое место чтобы добавилось
 
Цитата
Юрий М написал: Сделайте МАЛЕНЬКИЙ пример на основе моего файл
и создайте тот самый перечень данных.
 
Юрий М,  не могу понять смысл создавать еще один файл? когда я его уже два раза прикреплял, в нем указан перечень данных. я ведь вроде все описал в скриншоте сообщение №1

- открыл ваш файл, вписал туда текст (в вашем случае там было указано "Значение 1", я указал "Другой текст") не могу понять правда зачем, какая разница какое слово там будет?!

ну и еще раз перепишу сообщение которые было выше:
- для первого списка кнопка "Записать" не нужна

- "Для второго списка данных будет не много, там можно на втором листе перечислять этих пять составов и все, во втором списке нужна будет кнопка, потому что сначала вручную будет писаться текст в ячейку, и когда нужно будет в эту ячейку дописать состав, то нужно нажать на кнопку Состав, выбрать, и потом кликнуть на любое место чтобы добавилось"

Сам перечень данных (Категории, Состав) я разместил на втором листе (Лист2), т.е. там должны находится исх.данные, а на первом листе уже сами результаты.

Спасибо!
Изменено: iskatel - 02.08.2015 15:16:42
 
Цитата
iskatel написал:
не могу понять смысл создавать еще один файл? <...> я ведь вроде все описал в скриншоте сообщение №1
Не должен я готовить данные - переписывать с рисунка в таблицу. Это Вы должны сделать.
Цитата
iskatel написал:
Сам перечень данных (Категории, Состав) я разместил на втором листе
Нет на втором листе списка "Состав".
 
Юрий М,
Я сразу не так понял вас. я думал что вы не знаете какой текст (исходные данные) должны быть, это на самом деле не важно какие там слова буду.

Извинись, действительно на втором листе "Составы" не указал, получается при сохранении не нажал сохранить.

прик. новый
 
Проверьте.
 
Юрий М,
Спасибо! Практически то что нужно, есть пару нюансов которые ни как не могу исправить, вообщем снова сделал скриншот


и еще вопросик: можно в столбце "Размер" сделать так же как в столбце "Категории"


Спасибо!
Изменено: iskatel - 04.08.2015 12:09:43
 
1. Отображение/скрытие первого и второго ЛистБоксов исправил.
2. Про "Размеры" вообще впервые слышу. Да и про второй ЛистБокс изначально ничего не говорилось... Так мы никогда не остановимся - столбцов хватает)) У Вас есть рабочий код - добавляйте по аналогии на лист ещё один контрол (ЛистБокс) и задавайте ему контролируемый диапазон.
 
Юрий М, Спасибо за правки, сейчас вроде галочки ставятся сразу.

скажите где в коде указывается чтобы в отображающем списке "Составы" данные брались с "Лист2" ячейки B2:B5 (мне нужно с В2:В15)
я вроде код внимательно просмотрел но там такого нет:


Код
Sub Macro2()
Dim i As Long, x As Long
    With Sheets("Лист1").ListBox2
        For i = 0 To .ListCount - 1
            If .Selected(i) Then
                x = x + 1
                If x = 1 Then
                    Range(Adr) = Range(Adr) & "<br><br>Состав: " & .List(i, 0)
                Else
                    Range(Adr) = Range(Adr) & ", " & .List(i, 0)
                End If
                .Selected(i) = False
            End If
        Next
        Sheets("Лист1").ListBox2.Visible = False
    End With
    If x = 0 Then MsgBox "Не выбрано ни одной позиции. Повторите ввод.", 48, "Ошибка!"
End Sub
Изменено: iskatel - 04.08.2015 21:02:59
 
В коде этого нет - задано в свойствах самого ЛистБокса. Или заполнять программно.
 
Я никак не могу понять какой ЛистБокс и где увидеть его свойства? в интернете пишут все про VBA?
 
Включите режим конструктора - отобразятся все ЛистБоксы, выделяем нужный и жмём кнопку "Свойства"
 
Огромное спасибо! Все получилось! ну а вообще как то все запутано в ексле и код сам и сам методы работы vba
 
Юрий М, о посте №10... Здравствуйте! Подскажите, как сделать, чтобы данные вводились при выборе, а не кнопкой с макросом, ну или чтобы кнопка была всегда рядом с активной ячейкой (списки огромные - каждый раз листать вверх очень неудобно...
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Несколько вариантов:
1. Кнопку разместить в закреплённой первой строке - всегда будет перед глазами (самый простой вариант).
2. Саму кнопку отображать рядом с ЛистБоксом (см. код, как это сделано для ЛистБокса).
 
А вот и реализация. Обе кнопки выполняют одну и туже функцию. Оставьте нужную. Или обе :-)
Страницы: 1 2 След.
Читают тему
Наверх