Страницы: 1
RSS
Заполнение Textbox'а по умолчанию
 
День добрый!  
В приложенном файлике пример моей проблемы. У меня пользователи сперва выбирают фирму по которой будут вводить данные (прога выбирает строчку) и вводят данные по фирме через форму. Но введя один раз если потом снова запустить форму что бы что то подправить то приходится вводить всё заново. А хотелось бы что бы текстбоксы были уже заполнены теми данными которые там есть уже.    
 
И ещё ну это не основное конечно. Там у меня 4 фирмы с названием "..." так вот если их удалить то есть чистый файл без пользователей при нажатии на кнопку добавить нового пользователя выдаёт ошибку(((((( что надо подправить?
 
Замените в коде все строки Unload Me  
на строки Me.hide  
 
Тогда формы будут не выгружаться из памяти полностью, а просто скрываться.  
При повторном вызове формы все поля останутся заполненными.  
 
 
PS: Дизайн листа СТАРТ понравился)  
Но код...  
 
Зачем сто раз писать в коде одну и ту же строку?  
(например, ThisWorkbook.Worksheets("График").Range("A1").CurrentRegion)  
 
Так намного проще, удобнее, и быстрее:  
 
With ThisWorkbook.Worksheets("График").Range("A1").CurrentRegion  
       Set Jan9ssht = .Offset(Rng.Row - 1, 21).Resize(1, 1)  
       Set feb9ssht = .Offset(Rng.Row - 1, 36).Resize(1, 1)  
       Set mar9ssht = .Offset(Rng.Row - 1, 51).Resize(1, 1)  
       ' ...  
   End With  
 
 
ну или даже так:  
 
With ThisWorkbook.Worksheets("График").Range("A1").Offset(Rng.Row - 1)  
       Set Jan9ssht = .Offset(, 21)  
       Set feb9ssht = .Offset(, 36)  
       Set mar9ssht = .Offset(, 51)  
       ' ...  
   End With  
 
 
И вообще, зачем столько переменных?  
Не знаю, конечно, что там и как работает, но можно найти более оптимальный способ (без множества переменных) - достаточно будет 20 строк кода в Sub OKbt_Click()
 
Большое Вам спасибо! Сложный код так как это первая серьёзная для меня работа по VBA, и опыта пока мало для оптимизированного кода. За ценные советы большое спасибо!  
 
Hide не подойдёт, а что если закрыть файл, а потом открыть? Нужно в идеале выбрать фирму нажать шаг 3 и там уже должно быть заполнено всё по ранее внесённым данным
 
Коллеги ну помогите ну можно же как то затащить в форму данные по умолчанию из строки
Страницы: 1
Читают тему
Наверх