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

Вход

Регистрация

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

 

= Мир MS Excel/Протянуть выпадающий список с добавлением - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Протянуть выпадающий список с добавлением (Формулы/Formulas)
Протянуть выпадающий список с добавлением
AnRusik Дата: Среда, 16.03.2016, 11:16 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 1 ±
Замечаний: 20% ±

Здравствуйте гуру.
На просторах интернета нашелся выпадающий список с возможностью добавления.
А как можно его доделать, чтобы можно было протянуть вниз этот список (ячейка D2), при этом осталась возможность в полученных ячейках также добавлять новые значения, а не просто пользоваться списком?
Спасибо
К сообщению приложен файл: 130117_list_a_1.xlsm(15Kb)
 
Ответить
СообщениеЗдравствуйте гуру.
На просторах интернета нашелся выпадающий список с возможностью добавления.
А как можно его доделать, чтобы можно было протянуть вниз этот список (ячейка D2), при этом осталась возможность в полученных ячейках также добавлять новые значения, а не просто пользоваться списком?
Спасибо

Автор - AnRusik
Дата добавления - 16.03.2016 в 11:16
akobir Дата: Среда, 16.03.2016, 11:19 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 159
Репутация: 9 ±
Замечаний: 0% ±

Excel 2010
AnRusik, Уберите галочку "Игнорировать пустые значения" в проверке данных.

UPD: понял задачу полностью. Сейчас допишу макрос.
Файл вложил.
К сообщению приложен файл: 8555731.xlsm(19Kb)


e-mail: akobir.ismailov@gmail.com

Сообщение отредактировал akobir - Среда, 16.03.2016, 11:35
 
Ответить
СообщениеAnRusik, Уберите галочку "Игнорировать пустые значения" в проверке данных.

UPD: понял задачу полностью. Сейчас допишу макрос.
Файл вложил.

Автор - akobir
Дата добавления - 16.03.2016 в 11:19
AnRusik Дата: Среда, 16.03.2016, 11:46 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 1 ±
Замечаний: 20% ±

Спасибо!
 
Ответить
СообщениеСпасибо!

Автор - AnRusik
Дата добавления - 16.03.2016 в 11:46
AnRusik Дата: Среда, 16.03.2016, 12:11 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 1 ±
Замечаний: 20% ±

Наверное, администраторы забанят, но я попробую.
А если список находится на одном листе, а сам выпадающий список - на другом. Как в данном случае? Уже список не пойдет - надо привязываться к массиву ячеек?
 
Ответить
СообщениеНаверное, администраторы забанят, но я попробую.
А если список находится на одном листе, а сам выпадающий список - на другом. Как в данном случае? Уже список не пойдет - надо привязываться к массиву ячеек?

Автор - AnRusik
Дата добавления - 16.03.2016 в 12:11
akobir Дата: Среда, 16.03.2016, 12:25 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 159
Репутация: 9 ±
Замечаний: 0% ±

Excel 2010
AnRusik, у вас список задается через имя. Посмотрите диспетчер имен и поймете, как он формируется.
Перенести на другой лист ничего не мешает. :)


e-mail: akobir.ismailov@gmail.com
 
Ответить
СообщениеAnRusik, у вас список задается через имя. Посмотрите диспетчер имен и поймете, как он формируется.
Перенести на другой лист ничего не мешает. :)

Автор - akobir
Дата добавления - 16.03.2016 в 12:25
AnRusik Дата: Среда, 16.03.2016, 13:25 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 16
Репутация: 1 ±
Замечаний: 20% ±

akobir, Сам список я перенес на Лист2, но при добавлении новых позиций в выпадающем списке - выхоодит ошибка.
К сообщению приложен файл: 9154504.xlsm(19Kb)
 
Ответить
Сообщениеakobir, Сам список я перенес на Лист2, но при добавлении новых позиций в выпадающем списке - выхоодит ошибка.

Автор - AnRusik
Дата добавления - 16.03.2016 в 13:25
RAN Дата: Среда, 16.03.2016, 13:42 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4277
Репутация: 829 ±
Замечаний: 0% ±

2010
У вас глючит имя People.
Удалите, и создайте заново.
Если не поможет - переезжайте в новый файл.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеУ вас глючит имя People.
Удалите, и создайте заново.
Если не поможет - переезжайте в новый файл.

Автор - RAN
Дата добавления - 16.03.2016 в 13:42
Manyasha Дата: Среда, 16.03.2016, 13:45 | Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 1582
Репутация: 659 ±
Замечаний: 0% ±

Excel 2007, 2010
AnRusik, список у Вас на втором листе, а Вы его ищите на первом. Для всех Range("People") и других диапазонов листа 2 нужно указывать лист!
[vba]
Код
Sheets("Лист2").Range("People")
' Или так
with Sheets("Лист2")
NameRange = Left(.Range("People").Cells(i), counter)
'и т.д
end with
[/vba]
К сообщению приложен файл: 9154504-1.xlsm(20Kb)


marinamorozova_box@mail.ru
ЯД: 410013299366744 WM: R193491431804
 
Ответить
СообщениеAnRusik, список у Вас на втором листе, а Вы его ищите на первом. Для всех Range("People") и других диапазонов листа 2 нужно указывать лист!
[vba]
Код
Sheets("Лист2").Range("People")
' Или так
with Sheets("Лист2")
NameRange = Left(.Range("People").Cells(i), counter)
'и т.д
end with
[/vba]

Автор - Manyasha
Дата добавления - 16.03.2016 в 13:45
RAN Дата: Среда, 16.03.2016, 13:53 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4277
Репутация: 829 ±
Замечаний: 0% ±

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


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеДля имен уровня книги (а именно так это имя значится в диспетчере), имя листа указывать не обязательно.
Да, с указанием листа работать начинает.
Почему и пишу - поломато.

Автор - RAN
Дата добавления - 16.03.2016 в 13:53
Manyasha Дата: Среда, 16.03.2016, 14:05 | Сообщение № 10
Группа: Модераторы
Ранг: Старожил
Сообщений: 1582
Репутация: 659 ±
Замечаний: 0% ±

Excel 2007, 2010
Андрей, это код события листа (1-го), и все range и cells ищутся на нем.
Т.е. запись Range("People") аналогична Sheets("Лист1").Range("People"), так ведь? Или нет? <_<
Но на Лист1 имени People нет.

UPD
Проверила: создала имя q
Код
=Лист2!$A$1

В модуле листа 1 пишу
[vba]
Код
Sub t()
Debug.Print Range("q").Cells.Count
End Sub
[/vba]не работает.


marinamorozova_box@mail.ru
ЯД: 410013299366744 WM: R193491431804


Сообщение отредактировал Manyasha - Среда, 16.03.2016, 14:13
 
Ответить
СообщениеАндрей, это код события листа (1-го), и все range и cells ищутся на нем.
Т.е. запись Range("People") аналогична Sheets("Лист1").Range("People"), так ведь? Или нет? <_<
Но на Лист1 имени People нет.

UPD
Проверила: создала имя q
Код
=Лист2!$A$1

В модуле листа 1 пишу
[vba]
Код
Sub t()
Debug.Print Range("q").Cells.Count
End Sub
[/vba]не работает.

Автор - Manyasha
Дата добавления - 16.03.2016 в 14:05
RAN Дата: Среда, 16.03.2016, 14:52 | Сообщение № 11
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4277
Репутация: 829 ±
Замечаний: 0% ±

2010
Виноват, небольшая поправка.
Код работает из модуля того листа, где диапазон, или стандартного модуля.
А поскольку я практически не работаю с модулями листа, и с функциями не дружу, промахнулся.
К сообщению приложен файл: 6925143.xlsm(17Kb)


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 16.03.2016, 15:01
 
Ответить
СообщениеВиноват, небольшая поправка.
Код работает из модуля того листа, где диапазон, или стандартного модуля.
А поскольку я практически не работаю с модулями листа, и с функциями не дружу, промахнулся.

Автор - RAN
Дата добавления - 16.03.2016 в 14:52
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Протянуть выпадающий список с добавлением (Формулы/Formulas)
Страница 1 из 11
Поиск:

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