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

Вход

Регистрация

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

 

= Мир MS Excel/Выпадающий список на форме с добав-м новых элементов - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
Выпадающий список на форме с добав-м новых элементов
lebensvoll Дата: Пятница, 25.05.2018, 16:07 | Сообщение № 1
Группа: Проверенные
Ранг: Старожил
Сообщений: 1002
Репутация: 30 ±
Замечаний: 0% ±

Excel 2010
Добрый день многоуважаемые форумчане...
Помогите пожалуйста с решением.
На форме "Журнал прихода" есть "Поставщик". Оператор либо выбирает из выпадающего списка "Поставщика" либо вбивает начальные буквы и оператору предлагается нужный ему "Поставщик". Но как только вносишь нового поставщика он почему то не добавляется в Таблицу "Поставщик"
Как сделать так чтоб список пополнялся через форму???
Спасибо заранее огромное
Прошу прощение за RaR
Сейчас в экселе использую такой код для формы:
[vba]
Код
Private Sub ComboBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean) 'выпадающий список для выбора "поставщика" с добавлением нового "поставщика2 и сортировка списка по алфовиту
Dim LastRow2 As Long
Dim Fam As String
Fam = Me.ComboBox2.Value
   With Sheets("Поставщик")
      LastRow2 = .Cells(Rows.Count, 2).End(xlUp).Row
      If Fam <> "" Then
         If Application.WorksheetFunction.CountIf(Range("Поставщик"), Fam) = 0 Then
            .Cells(LastRow2 + 1, 2) = Fam
         End If
    End If
    Sheets("Поставщик").Range("B1:B1000").Sort Key1:=Sheets("Поставщик").Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
    DataOption1:=xlSortNormal 'этот код и поможет отсортировать в алфавитном порядке
    End With
   'Call UserForm_Activate
End Sub
[/vba]
К сообщению приложен файл: _1.rar (97.6 Kb)


Кто бы ты ни был, мир в твоих руках

Сообщение отредактировал lebensvoll - Пятница, 25.05.2018, 18:07
 
Ответить
СообщениеДобрый день многоуважаемые форумчане...
Помогите пожалуйста с решением.
На форме "Журнал прихода" есть "Поставщик". Оператор либо выбирает из выпадающего списка "Поставщика" либо вбивает начальные буквы и оператору предлагается нужный ему "Поставщик". Но как только вносишь нового поставщика он почему то не добавляется в Таблицу "Поставщик"
Как сделать так чтоб список пополнялся через форму???
Спасибо заранее огромное
Прошу прощение за RaR
Сейчас в экселе использую такой код для формы:
[vba]
Код
Private Sub ComboBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean) 'выпадающий список для выбора "поставщика" с добавлением нового "поставщика2 и сортировка списка по алфовиту
Dim LastRow2 As Long
Dim Fam As String
Fam = Me.ComboBox2.Value
   With Sheets("Поставщик")
      LastRow2 = .Cells(Rows.Count, 2).End(xlUp).Row
      If Fam <> "" Then
         If Application.WorksheetFunction.CountIf(Range("Поставщик"), Fam) = 0 Then
            .Cells(LastRow2 + 1, 2) = Fam
         End If
    End If
    Sheets("Поставщик").Range("B1:B1000").Sort Key1:=Sheets("Поставщик").Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
    DataOption1:=xlSortNormal 'этот код и поможет отсортировать в алфавитном порядке
    End With
   'Call UserForm_Activate
End Sub
[/vba]

Автор - lebensvoll
Дата добавления - 25.05.2018 в 16:07
lebensvoll Дата: Суббота, 26.05.2018, 21:20 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1002
Репутация: 30 ±
Замечаний: 0% ±

Excel 2010
:'( :'( :'(
Нашел еще один код но не получается применить его к своей форме
[vba]
Код
Private Sub Поставщик_NotInList(NewData As String, Response As Integer)
Response = acDataErrAdded
Me.Организация.RowSource = Me.Поставщик.RowSource & ";" & NewData
End Sub
[/vba]


Кто бы ты ни был, мир в твоих руках

Сообщение отредактировал lebensvoll - Суббота, 26.05.2018, 21:41
 
Ответить
Сообщение:'( :'( :'(
Нашел еще один код но не получается применить его к своей форме
[vba]
Код
Private Sub Поставщик_NotInList(NewData As String, Response As Integer)
Response = acDataErrAdded
Me.Организация.RowSource = Me.Поставщик.RowSource & ";" & NewData
End Sub
[/vba]

Автор - lebensvoll
Дата добавления - 26.05.2018 в 21:20
Pelena Дата: Суббота, 26.05.2018, 23:18 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 19403
Репутация: 4554 ±
Замечаний: ±

Excel 365 & Mac Excel
Так можно
[vba]
Код
Private Sub Поставщик_NotInList(NewData As String, Response As Integer)
    If MsgBox("Обновить список?", vbOKCancel) = vbOK Then
        With CurrentDb.OpenRecordset("select * from  [Поставщик]")
            .AddNew
            ![Организация] = NewData
            .Update
        End With
        Response = acDataErrAdded
    Else
        Response = acDataErrContinue
    End If
End Sub
[/vba]
Свойство поля Поставщик Ограничиться списком должно быть Да


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеТак можно
[vba]
Код
Private Sub Поставщик_NotInList(NewData As String, Response As Integer)
    If MsgBox("Обновить список?", vbOKCancel) = vbOK Then
        With CurrentDb.OpenRecordset("select * from  [Поставщик]")
            .AddNew
            ![Организация] = NewData
            .Update
        End With
        Response = acDataErrAdded
    Else
        Response = acDataErrContinue
    End If
End Sub
[/vba]
Свойство поля Поставщик Ограничиться списком должно быть Да

Автор - Pelena
Дата добавления - 26.05.2018 в 23:18
lebensvoll Дата: Воскресенье, 27.05.2018, 11:31 | Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 1002
Репутация: 30 ±
Замечаний: 0% ±

Excel 2010
Pelena, Добрый день!!!
hands Спасибо огромное работает на ура....
А я могу применить аналогично к другим спискам на форме!?
Просто если я к примеру начинаю аналогично применять данный код и (ограничения ставить ДА) для другого списка. То сбивается предыдущая настройка списка (((( или может я что то не понимаю... И делаю не так


Кто бы ты ни был, мир в твоих руках

Сообщение отредактировал lebensvoll - Воскресенье, 27.05.2018, 12:26
 
Ответить
СообщениеPelena, Добрый день!!!
hands Спасибо огромное работает на ура....
А я могу применить аналогично к другим спискам на форме!?
Просто если я к примеру начинаю аналогично применять данный код и (ограничения ставить ДА) для другого списка. То сбивается предыдущая настройка списка (((( или может я что то не понимаю... И делаю не так

Автор - lebensvoll
Дата добавления - 27.05.2018 в 11:31
  • Страница 1 из 1
  • 1
Поиск:

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