Note: The other languages of the website are Google-translated. Back to English

Как создать раскрывающийся список с множественным выбором или значениями в Excel?

По умолчанию вы можете выбрать только один элемент в раскрывающемся списке проверки данных в Excel. Как вы можете сделать несколько вариантов выбора в раскрывающемся списке, как показано ниже? Методы, описанные в этой статье, могут помочь вам решить проблему.


Создать раскрывающийся список с несколькими вариантами выбора с кодом VBA

В этом разделе представлены два кода VBA, которые помогут вам сделать множественный выбор в раскрывающихся списках на листе. Два кода VBA могут достичь:

Код VBA 1: разрешить множественный выбор в раскрывающемся списке без дубликатов
Код VBA 2: разрешить множественный выбор в раскрывающемся списке без дубликатов (удалить существующие элементы, выбрав его снова)

Вы можете применить один из следующих кодов VBA, чтобы сделать несколько выборов в раскрывающемся списке на листе в Excel. Пожалуйста, сделайте следующее.

1. Откройте рабочий лист, содержащий раскрывающиеся списки проверки данных, из которых вы хотите сделать несколько выборов. Щелкните правой кнопкой мыши вкладку листа и выберите Просмотреть код из контекстного меню.

2. в Microsoft Visual Basic для приложений окно, скопируйте приведенный ниже код VBA в окно кода. Смотрите скриншот:

Код VBA 1: разрешить множественный выбор в раскрывающемся списке без дубликатов

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updated by Extendoffice 2019/11/13
    Dim xRng As Range
    Dim xValue1 As String
    Dim xValue2 As String
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    Set xRng = Cells.SpecialCells(xlCellTypeAllValidation)
    If xRng Is Nothing Then Exit Sub
    Application.EnableEvents = False
    If Not Application.Intersect(Target, xRng) Is Nothing Then
        xValue2 = Target.Value
        Application.Undo
        xValue1 = Target.Value
        Target.Value = xValue2
        If xValue1 <> "" Then
            If xValue2 <> "" Then
                If xValue1 = xValue2 Or _
                   InStr(1, xValue1, ", " & xValue2) Or _
                   InStr(1, xValue1, xValue2 & ",") Then
                    Target.Value = xValue1
                Else
                    Target.Value = xValue1 & ", " & xValue2
                End If
            End If
        End If
    End If
    Application.EnableEvents = True
End Sub

3. нажмите другой + Q ключи, чтобы закрыть Microsoft Visual Basic для приложений окно.

Теперь вы можете выбрать несколько элементов из раскрывающегося списка на текущем листе.

Предположим, вы случайно выбрали элемент и вам нужно удалить его, не очищая всю ячейку и не начиная заново. Следующий код VBA 2 может оказать вам услугу.

Код VBA 2: разрешить множественный выбор в раскрывающемся списке без дубликатов (удалить существующие элементы, выбрав его снова)

Private Sub Worksheet_Change(ByVal Target As Range)
    'Updated by Extendoffice 2023/01/11
    'Updated by Ken Gardner 2022/07/11
    Dim xRng As Range
    Dim xValue1 As String
    Dim xValue2 As String
    Dim semiColonCnt As Integer
    Dim xType As Integer
    If Target.Count > 1 Then Exit Sub
    On Error Resume Next
    
    xType = 0
    xType = Target.Validation.Type
    If xType = 3 Then
        Application.ScreenUpdating = False
        Application.EnableEvents = False
        xValue2 = Target.Value
        Application.Undo
        xValue1 = Target.Value
        Target.Value = xValue2
        If xValue1 <> "" Then
            If xValue2 <> "" Then
                If xValue1 = xValue2 Or xValue1 = xValue2 & ";" Or xValue1 = xValue2 & "; " Then ' leave the value if only one in list
                    xValue1 = Replace(xValue1, "; ", "")
                    xValue1 = Replace(xValue1, ";", "")
                    Target.Value = xValue1
                ElseIf InStr(1, xValue1, "; " & xValue2) Then
                    xValue1 = Replace(xValue1, xValue2, "") ' removes existing value from the list on repeat selection
                    Target.Value = xValue1
                ElseIf InStr(1, xValue1, xValue2 & ";") Then
                    xValue1 = Replace(xValue1, xValue2, "")
                    Target.Value = xValue1
                Else
                    Target.Value = xValue1 & "; " & xValue2
                End If
                Target.Value = Replace(Target.Value, ";;", ";")
                Target.Value = Replace(Target.Value, "; ;", ";")
                If Target.Value <> "" Then
                    If Right(Target.Value, 2) = "; " Then
                        Target.Value = Left(Target.Value, Len(Target.Value) - 2)
                    End If
                End If
                If InStr(1, Target.Value, "; ") = 1 Then ' check for ; as first character and remove it
                    Target.Value = Replace(Target.Value, "; ", "", 1, 1)
                End If
                If InStr(1, Target.Value, ";") = 1 Then
                    Target.Value = Replace(Target.Value, ";", "", 1, 1)
                End If
                semiColonCnt = 0
                For i = 1 To Len(Target.Value)
                    If InStr(i, Target.Value, ";") Then
                        semiColonCnt = semiColonCnt + 1
                    End If
                Next i
                If semiColonCnt = 1 Then ' remove ; if last character
                    Target.Value = Replace(Target.Value, "; ", "")
                    Target.Value = Replace(Target.Value, ";", "")
                End If
            End If
        End If
        Application.EnableEvents = True
        Application.ScreenUpdating = True
    End If
End Sub

Заметки:

1). Повторяющиеся значения не допускаются в выпадающем списке.
2). Приведенный выше код VBA 2 был предоставлен нашим увлеченным пользователем Кеном Гарднером 2022 июля 07 г.
3). Сохраните книгу как Excel Macro-Enabled Workbook чтобы код работал в будущем.
4). После добавления кода VBA 2 существующий элемент можно удалить, снова выбрав его в раскрывающемся списке. Смотрите гифку ниже:


Легко создавайте раскрывающийся список с несколькими вариантами выбора с помощью замечательного инструмента

Здесь мы настоятельно рекомендуем Раскрывающийся список с множественным выбором особенность Kutools for Excel для вас. С помощью этой функции вы можете легко выбрать несколько элементов из раскрывающегося списка в указанном диапазоне, текущем листе, текущей книге или всех открытых книгах по мере необходимости.

Перед применением Kutools for Excel, Пожалуйста, сначала скачайте и установите.

1. Нажмите Кутулс > Раскрывающийся список > Раскрывающийся список с множественным выбором > Настройки. Смотрите скриншот:

2. в Настройки раскрывающегося списка с множественным выбором диалоговое окно, настройте следующим образом.

  • 2.1) Укажите область применения в Обращаться к раздел. В этом случае я выбираю Текущий рабочий лист из Указанный объем раскрывающийся список;
  • 2.2). Направление текста раздел выберите направление текста в зависимости от ваших потребностей;
  • 2.3). Разделитель поле введите разделитель, который вы будете использовать для разделения нескольких значений;
  • 2.4) Проверьте Не добавляйте дубликаты коробка в Опции раздел, если вы не хотите дублировать ячейки выпадающего списка;
  • 2.5) Нажмите OK кнопка. Смотрите скриншот:

3. Щелкните Кутулс > Раскрывающийся список > Раскрывающийся список с множественным выбором для включения функции.

Теперь вы можете выбрать несколько элементов из раскрывающегося списка на текущем листе или в любой области, указанной на шаге 2.

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


Статьи по теме:

Автозаполнение при вводе текста в раскрывающемся списке Excel
Если у вас есть раскрывающийся список проверки данных с большими значениями, вам нужно прокрутить список вниз только для того, чтобы найти нужное, или введите все слово напрямую в поле списка. Если есть способ разрешить автозаполнение при вводе первой буквы в выпадающем списке, все станет проще. В этом руководстве представлен метод решения проблемы.

Создать раскрывающийся список из другой книги в Excel
Создать раскрывающийся список проверки данных среди листов в книге довольно просто. Но если данные списка, необходимые для проверки данных, находятся в другой книге, что вы будете делать? В этом руководстве вы узнаете, как подробно создать раскрывающийся список из другой книги в Excel.

Создайте раскрывающийся список с возможностью поиска в Excel
Для раскрывающегося списка с многочисленными значениями найти подходящий - непростая задача. Ранее мы ввели метод автоматического заполнения раскрывающегося списка при вводе первой буквы в раскрывающемся списке. Помимо функции автозаполнения, вы также можете сделать раскрывающийся список доступным для поиска для повышения эффективности работы при поиске правильных значений в раскрывающемся списке. Чтобы сделать раскрывающийся список доступным для поиска, попробуйте метод, описанный в этом руководстве.

Автоматическое заполнение других ячеек при выборе значений в раскрывающемся списке Excel
Допустим, вы создали раскрывающийся список на основе значений в диапазоне ячеек B8: B14. При выборе любого значения в раскрывающемся списке необходимо, чтобы соответствующие значения в диапазоне ячеек C8: C14 автоматически заполнялись в выбранной ячейке. Для решения проблемы методы, описанные в этом руководстве, окажут вам услугу.

Дополнительные инструкции для раскрывающегося списка ...


Лучшие инструменты для работы в офисе

Kutools for Excel решает большинство ваших проблем и увеличивает вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма ...
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон...
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы... Предотвращение дублирования ячеек; Сравнить диапазоны...
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор ...
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое ...
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии...
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом ...
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF...
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
вкладка kte 201905

Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
офисный дно
Сортировать комментарии по
Комментарии (67)
Оценок пока нет. Оцените первым!
Этот комментарий был сведен к минимуму модератором на сайте
Привет, спасибо за решение и код. Но следующий шаг — как убедиться, что пользователь не выбирает «дублирующиеся» значения из раскрывающегося списка. Например, если в списке 4 элемента — апельсин, яблоко, банан, персик, и если пользователь уже выбрал «апельсин», то Excel не должен позволять пользователю выбирать «апельсин» ИЛИ этот параметр следует удалить из оставшейся части. список. Не могли бы вы опубликовать код для реализации этой функции. Спасибо. Езди
Этот комментарий был сведен к минимуму модератором на сайте
Привет Йезди, Спасибо за ваш комментарий. Код был обновлен, и теперь в раскрывающемся списке не допускается дублирование значений. Спасибо. Солнечный свет
Этот комментарий был сведен к минимуму модератором на сайте
Замечательно, что это позволяет выбирать несколько вариантов, но, как прокомментировал @Yezdi, я обнаружил, что он добавит один или несколько дубликатов, даже если я их не выберу. Итак, в настоящее время это решение на 80%... одно изменение от идеального. Я не кодер VB, иначе я бы предложил решение.
Этот комментарий был сведен к минимуму модератором на сайте
Вы можете изменить код в следующих строках, чтобы предотвратить дублирование: If xValue2 "" Then Target.Value = xValue1 & ", " & xValue2 End If To: If xValue2 "" Then If CheckIfAlreadyAdded(xValue1, xValue2) = False Then Target .Value = xValue1 & ", " & xValue2 Else Target.Value = xValue1 End If End If Затем добавьте следующую функцию: Private Function CheckIfAlreadyAdded(ByVal sText As String, sNewValue As String) As Boolean CheckIfAlreadyAdded = False Dim WrdArray() As String WrdArray() = Split(sText, ",") For i = LBound(WrdArray) To UBound(WrdArray) If Trim(WrdArray(i)) = Trim(sNewValue) Then CheckIfAlreadyAdded = True Next i End Function -- Вероятно, есть лучшие способы кодирования, но пока это работает.
Этот комментарий был сведен к минимуму модератором на сайте
Только что понял, что я не вышел из цикла в новой функции, если условие было установлено, поэтому нам не нужно проверять другие записи.
Этот комментарий был сведен к минимуму модератором на сайте
Привет. Спасибо за код и дополнение для ограничения дубликатов. Еще один запрос - какое добавление/изменение необходимо сделать, чтобы разрешить множественный выбор только в одном или двух конкретных столбцах? Этот код повторно добавляет строки текста в то, что должно быть «простыми» ячейками, если я собираюсь исправить опечатку или внести изменение или дополнение к тексту в ячейке, а не просто вести себя «нормально» и принимать изменение (без повторного добавления всего текста снова). Например, столбец A является «простым» столбцом. Я пишу предложение «Какие три вещи вы хотите больше всего?» Столбец B — это столбец «список», в котором я хочу иметь возможность выбрать только одно значение (в данном случае, скажем, имя ребенка). Столбец C — это еще один столбец «список», в котором пользователь должен иметь возможность выбирать несколько элементов (что этот код позволяет мне делать отлично). По мере продвижения я понимаю, что допустил опечатку в столбце А и хочу ее исправить. В этом коде, если я войду (двойной щелчок, F2) и внесу исправление в слово «предметы», я получу в своей ячейке следующий результат: «Какие три предмета вы хотите больше всего? Какие три вещи, которые вы хотите больше всего?» заранее спасибо за любую помощь (от пользователя, который ДЕЙСТВИТЕЛЬНО любит VBA, но все еще находится на самых ранних этапах обучения!)
Этот комментарий был сведен к минимуму модератором на сайте
Мне удалось заставить код работать, но затем, когда я сохранил документ (с включенными макросами), закрыл его и вернулся, код больше не работал (хотя он все еще был там). Я не могу понять, что я сделал не так. Любые идеи?
Этот комментарий был сведен к минимуму модератором на сайте
Привет, Синтия. Если первоначальный автор не ответит, я дам вам ответ, но я снова буду перед компьютером только 29 декабря. Я также не программист VBA. Тем временем вы можете выполнить поиск в Google, как определить номер столбца, и позволить коду запускаться только в том случае, если данные редактируются в этом конкретном столбце (столбцах). Я сделал это, но код находится на моем рабочем ПК и не могу вспомнить его в данный момент, возможно, попробуйте поместить debug.print в target.column или что-то в этом роде, чтобы увидеть, дает ли он вам редактируемый номер столбца. . Извините, Дженнифер, я не уверен в вашей проблеме :(
Этот комментарий был сведен к минимуму модератором на сайте
@Cynthia, если все еще требуется, вы должны иметь возможность сделать что-то подобное, чтобы убедиться, что код работает только в определенных столбцах, в моем случае в столбцах 34 и 35: если (Target.Column 34 и Target.Column 35), затем выйдите из Sub 'Поместите этот код в начало после ваших тусклых выражений
Этот комментарий был сведен к минимуму модератором на сайте
[quote] @Cynthia, если все еще требуется, вы можете сделать что-то подобное, чтобы убедиться, что код работает только в определенных столбцах, в моем случае в столбцах 34 и 35: If (Target.Column 34 And Target.Column 35) Затем Exit Sub 'Поместите этот код в начало после ваших тусклых выраженийМервин[/quote] Привет @Mervyn, полностью потерял тему, но большое спасибо за ваши ответы. Я попытался применить If (Target.Column 34 And Target.Column 35), затем Exit Sub (моя версия гласит: If (Target.Column4 And Target.Column5) Then Exit Sub, как вы указали, но я получаю «Время выполнения ошибка '438': Объект не поддерживает это свойство или метод "" ошибка в этой новой строке. Вот первые несколько строк моего кода: Private Sub Worksheet_Change (ByVal Target As Range) Dim xRng As Range Dim xValue1 As String Dim xValue2 As String If (Target.Column4 And Target.Column5) Then Exit Sub If Target.Count > 1 Then Exit Sub On Error Resume Next В моем листе всего 6 столбцов: Вопрос | Ответ | Категория | Подкатегория | Теги | Ссылка на фото Мне нужно только несколько раскрывающихся списков значений в подкатегориях и тегах (столбцы 4 и 5). Я буду продолжать искать информацию, как вы предложили 12 декабря, и посмотрю ссылку, предоставленную благотворительностью.
Этот комментарий был сведен к минимуму модератором на сайте
Если Target.Column <> 34, то выйдите из Sub

'Поместите этот код в начало после ваших тусклых выражений
Этот комментарий был сведен к минимуму модератором на сайте
Привет, я в настоящее время использую эту формулу, и все столбцы с проверкой данных теперь имеют возможность множественного выбора, однако я хочу ограничить множественный выбор только одним столбцом. Может ли кто-нибудь отредактировать эту формулу для меня, чтобы множественный выбор можно было применить только к столбцу 4? Спасибо :) Private Sub Worksheet_Change (ByVal Target As Range) 'Обновлено: 2016/4/12 Dim xRng As Range Dim xValue1 As String Dim xValue2 As String If Target.Count > 1 Затем выйдите из Sub On Error Resume Next Set xRng = Cells. SpecialCells(xlCellTypeAllValidation) Если xRng ничто, то выйдите из подпрограммы Application.EnableEvents = False, если не Application.Intersect(Target, xRng) ничто, тогда xValue2 = Target.Value Application.Undo xValue1 = Target.Value Target.Value = xValue2 If xValue1 " " Then If xValue2 "" Then If xValue1 = xValue2 Or _ InStr(1, xValue1, ", " & xValue2) Or _ InStr(1, xValue1, xValue2 & ",") Then Target.Value = xValue1 Else Target.Value = xValue1 & ", " & xValue2 End If End If End If End If Application.EnableEvents = True End Sub Любая помощь будет оценена по достоинству!
Этот комментарий был сведен к минимуму модератором на сайте
Это работает хорошо, но я не могу удалить выбранный элемент. Любые предложения на случай, если я случайно нажму на что-то и мне нужно будет удалить это, не очищая (надеюсь) всю ячейку и не начиная заново? Кроме того, для тех, кто хочет определить столбец или столбцы, у Contextures есть отличное дополнение к приведенному здесь коду, позволяющее это сделать. http://www.contextures.com/excel-data-validation-multiple.html#column
Этот комментарий был сведен к минимуму модератором на сайте
[quote]Это работает хорошо, но я не могу удалить выбранный элемент. Любые предложения на случай, если я случайно нажму на что-то и мне нужно будет удалить это, не очищая (надеюсь) всю ячейку и не начиная заново? Кроме того, для тех, кто хочет определить столбец или столбцы, у Contextures есть отличное дополнение к приведенному здесь коду, позволяющее это сделать. http://www.contextures.com/excel-data-validation-multiple.html#columnБлаготворительность[/quote] Код работает нормально. Однако я не могу отменить выбор элемента. Когда я хочу удалить элемент из выбора, он просто не удаляется. Кто-нибудь еще сталкивается с этой проблемой? [/quote] Привет всем, Любые решения, найденные для этой проблемы.. Пожалуйста, поделитесь..
Этот комментарий был сведен к минимуму модератором на сайте
Привет, код работает нормально. Однако я не могу отменить выбор элемента. Когда я хочу удалить элемент из выбора, он просто не удаляется. Кто-нибудь еще испытывает эту проблему?
Этот комментарий был сведен к минимуму модератором на сайте
Был ли ответ на этот вопрос. Это та же проблема, что и у меня. Кажется, нет способа удалить выбранный элемент.
Этот комментарий был сведен к минимуму модератором на сайте
удалить содержимое в ячейке, затем повторно выбрать
Этот комментарий был сведен к минимуму модератором на сайте
Привет всем, у меня есть этот код на листе Excel, и он очищает содержимое из раскрывающегося списка при выборе ячейки - я знаю, какая часть кода это делает (часть, которая говорит «fillRng.ClearContents»), и я пытались использовать некоторые из вышеперечисленных, чтобы исправить это безуспешно ... Я новичок в программировании VBA и т. д. Может ли кто-нибудь предложить какую-либо помощь в том, как изменить его, чтобы при выборе ячейки он не очищался, и записи не будут продублируйте пожалуйста?? Параметр Явный Dim fillRng As Range Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim Qualifiers As MSForms.ListBox Dim LBobj As OLEObject Dim i As Long Set LBobj = Me.OLEObjects("ListBox1") Set Qualifiers = LBobj.Object If Target.Row > 3 И Target.Column = 3 Затем установите fillRng = Target With LBobj .Left = fillRng.Left .Top = fillRng.Top .Width = fillRng.Width .Height = 155 .Visible = True End With Else LBobj.Visible = False If Not fillRng Is Nothing Тогда fillRng.ClearContents с квалификаторами Если .ListCount 0 Тогда For i = 0 To .ListCount - 1 Если fillRng.Value = "" Тогда If .Selected(i) Then fillRng.Value = .List(i) Else If .Selected(i) Then fillRng.Value = _ fillRng.Value & ", " & .List(i) End If Next End If For i = 0 To .ListCount - 1 .Selected(i) = False Next End With Set fillRng = Ничего Конец Если Конец Если Конец Вложенный
Этот комментарий был сведен к минимуму модератором на сайте
Привет всем, я мог бы сделать свой раскрывающийся список идеально, но мой вопрос: когда я выбираю все необходимые элементы, он идет один за другим по горизонтали через ячейку, например: желтый, зеленый, черный, красный. Но как я могу сделать его вертикальным? Например, больше похоже на: Оранжевый, черный, желтый, Красный, потому что по горизонтали ячейка становится довольно длинной при выборе большого количества элементов. Не могли бы вы сказать мне, есть ли способ сделать это? Спасибо, Дезире.
Этот комментарий был сведен к минимуму модератором на сайте
Мне удалось использовать этот код и успешно создать раскрывающиеся списки с несколькими вариантами выбора. Это сработало, когда я закрывался и снова открывался в разные дни. Однако теперь не все ячейки, которые я первоначально выбрал, допускают множественный выбор. Только те, которые были сделаны ранее, несмотря на использование кода для всей электронной таблицы. Вы можете помочь?
Этот комментарий был сведен к минимуму модератором на сайте
У меня такая же проблема.
Этот комментарий был сведен к минимуму модератором на сайте
ячейки, скорее всего, заблокированы, щелкните правой кнопкой мыши по всем из них, перейдите к форматированию ячеек, защите, затем снимите флажок с опции заблокированной ячейки
Этот комментарий был сведен к минимуму модератором на сайте
Я создал раскрывающийся список, в котором можно было выбрать несколько вариантов текста, таких как «питание», «вес» и «работа», для причины, по которой каждый звонящий звонит. У меня есть сводная страница, где я хочу увидеть, сколько из каждой причины были указаны в конкретном месяце. Какую формулу я бы использовал, чтобы сообщить Excel, чтобы он вытаскивал и подсчитывал каждый из них отдельно в данном месяце? В настоящее время, как я его настроил, он правильно подсчитывается только в том случае, если у меня есть одна причина в ячейке для каждого вызывающего абонента.
Этот комментарий был сведен к минимуму модератором на сайте
Добрый день,
Извините, не могу помочь вам решить эту проблему. Пожалуйста, дайте мне знать, если вы найдете ответ.
Этот комментарий был сведен к минимуму модератором на сайте
Я пытаюсь создать 4 столбца с раскрывающимися списками, где я могу выбрать несколько значений. Как изменить код VBA «раскрывающийся список с несколькими вариантами выбора», чтобы при нажатии на уже введенное значение оно удалялось из ячейки? Заранее спасибо.
Этот комментарий был сведен к минимуму модератором на сайте
Дорогой Рэнди,
Что вы имеете в виду, когда я нажимаю на уже введенное значение, оно удаляет его из ячейки?
Этот комментарий был сведен к минимуму модератором на сайте
У меня такой же вопрос. Мой выпадающий список не запоминает выбранные значения. Если кто-то щелкнет ячейку, которая уже была заполнена (не им, а кем-то другим), выбранные значения очищаются, и ячейка снова становится пустой.
Этот комментарий был сведен к минимуму модератором на сайте
Я использую приведенный ниже код, чтобы разрешить множественный выбор на нескольких листах, но когда я перехожу на другой рабочий лист в книге, множественный выбор исчезает. Когда я сохраню файл и вернусь, он будет работать для одной вкладки с кодом, но снова, когда я нажму на другую вкладку с кодом, он больше не работает. Любая идея, как это исправить, поэтому, если я нажму на лист с кодом VBA, он всегда будет разрешать множественный выбор?
Этот комментарий был сведен к минимуму модератором на сайте
Привет, ich bin totaler VBA Laie. Ich versuche den Code so zu modifizieren, dass
а) die Mehrfachauswahl nicht in allen, sondern nur ein zwei Spalten aktiv ist
b) ich Items auch wieder rausnehmen kann, zB in dem ich in der Listenauswahl das Item noch einmal anklicke (Beispiel: ich habe über die Mehrfachauswahl ausgewählt: A, D, X, Y... nun fällt mir auf, dass D nicht dazu gehört Beim aktuellen Code müsste ich Eingaben entfernen und neu auswählen).
Спасибо заранее!
Этот комментарий был сведен к минимуму модератором на сайте
Я не могу продолжить создание множественного выбора выпадающего списка. Я прослушал учебник и прочитал материал, но все еще не могу создать. Пожалуйста, кто-нибудь может мне помочь?
Этот комментарий был сведен к минимуму модератором на сайте
Я знаю, что это может быть совершенно случайно, но я использую вариант VBA без проблем. За исключением одной страницы, если вы выберете первые три варианта, он не позволит вам выбрать четвертый. Это позволит вам выбрать 5-й, 6-й и так далее, но не 4-й вариант. Мысли?
Этот комментарий был сведен к минимуму модератором на сайте
Привет, Роберт,
Я проверил код, но не нашел проблемы, как вы упомянули. Скажите, какую версию Excel вы используете? Спасибо за ваш комментарий.
Здесь еще нет комментариев
Загрузить ещё
Оставляйте свои комментарии
Публикация как гость
×
Оценить этот пост:
0   Характеристики
Предлагаемые места

Подписывайтесь на Нас

Copyright © 2009 - www.extendoffice.ком. | Все права защищены. Питаться от ExtendOffice, | Карта сайта
Microsoft и логотип Office являются товарными знаками или зарегистрированными товарными знаками Microsoft Corporation в США и / или других странах.
Защищено Sectigo SSL