Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 13:37 04.07.25 
Компютри и Интернет
   >> Електронни таблици
*Кратък преглед

Тема combobox...нови  
Автор drosg (новак)
Публикувано11.01.11 16:52



Здравейте и за много години !

Да попитам едно въпросче, защо когато стартирам кода ,все ми изписва грешна парола, каде бъркам ?
Прилагам въпросния код
Private Sub CommandButton1_Click()
'дефинира променлива за брояч
For j = 1 To 15
If ComboBox1.Value = Sheets("оператори").Cells(j, 2) And TextBox2.Text = Sheets("оператори").Cells(j, 1) Then
UserForm2.Hide
Else
MsgBox "Грешна парола!", vbCritical, "Грешна парола!": Exit Sub
End If
Next j
End Sub



Тема Re: combobox...нови [re: drosg]  
Автор Бypaн (ентусиаст)
Публикувано12.01.11 10:49



Изписва ти съобщението, защото правиш проверката вътре в цикъла и затова дори при верен потребител и парола, ще ти изведе съобщението 14 пъти.
По-добрия вариант е да си вземеш номера на реда от индекса на комбо-бокса и да си провериш само за този потребител. Разбира се приемам, че стойностите в комбобокса са попълнени последователно от колона B на лист оператори.



Тема едно уточнение...нови [re: drosg]  
Автор Бypaн (ентусиаст)
Публикувано12.01.11 10:53



Имай предвид, че индекса на комбобокса започва от 0, т.е. трябва да предвидиш отместване с 1.



Тема Re: едно уточнение... [re: Бypaн]  
Автор drosg (новак)
Публикувано12.01.11 17:34



Здр Буран !
Не ми е ясно как да взема номера на реда според индекса от комбобокса.
Да споделя казуса по-подробно !
В форма съм поставил един комбобок и един текстбокс .От комбобокса избирам имена на потребители, които между впрочем се съхраняват в лист "оператори" в колона А1:А7 , а в текстбокса въвеждам паролата, която е присвоена на избрания потребител. Паролите се съхраняват в същия лист но в колона В1:В7. Примерно на потребител ААА е присвоена паролата 111.
Как да направя проверка дали избраният потребител от комбобокса и въведената парола съюествуват в листа и дали въведената парола отговаря на избрания потребител.
Дано съм се изразил ясно....
БЛАГОДАРЯ



Тема Re: едно уточнение...нови [re: drosg]  
Автор Бypaн (ентусиаст)
Публикувано12.01.11 20:46



Private Sub CommandButton1_Click()

If ComboBox1.Value = Sheets("оператори").Cells(ComboBox1.ListIndex+1, 2) And TextBox2.Text = Sheets("оператори").Cells(ComboBox1.ListIndex+1, 1) Then
UserForm2.Hide
Else
MsgBox "Грешна парола!", vbCritical, "Грешна парола!": Exit Sub
End If

End Sub

и пак казвам - това при условие, че комбото е попълнено последователно (потребителя на първия ред е първи в списъка на комбото, потребителя на втория ред - втори в списъка и т.н.)..



Тема Re: едно уточнение...нови [re: Бypaн]  
Автор drosg (новак)
Публикувано12.01.11 23:03



Да точно така е попълнен комбобокса, както и в шийта, тъкато комбото взима данните чрез този код :

Private Sub UserForm_Activate()
Dim i As Integer
Dim z As Integer
'Дефиниране на променлива за брояча
Dim Row As Long
'Установяване на брояча на първия ред от данните
Row = 1
'Изчистване на стари данни в комбо-бокса
UserForm2.ComboBox1.Clear
'Стартиране на цикъл, който се повтаря, докато има
'данни в реда, на който е установен брояча
Do While Worksheets("оператори").Range("B" & Row) <> ""
'Прехвърляне на данните от таблицата в комбо-бокса

UserForm2.ComboBox1.AddItem (Worksheets("оператори").Range("B" & Row))

'Увеличаване на брояча с 1-ца
Row = Row + 1
Loop

End Sub


Поставям този код за да видиш от каде взимам данните за комбото
А иначе за кода ами все същото пак така ми изписва грешна парола ...незная защо така



Тема Re: едно уточнение...нови [re: drosg]  
Автор drosg (новак)
Публикувано14.01.11 14:53



Здравей Буран , благодаря ти за отзивчивостта, преписах кода кйто си ми написал, но пак ми дава грешна парола. Аз ли съм збъркал някаде ?



Тема Re: едно уточнение...нови [re: drosg]  
Автор Бypaн (ентусиаст)
Публикувано14.01.11 15:16



лично аз не мога да видя проблем. Едва ли е толкова трудно да си дебъгнеш кода и да видиш какво точно не става както трябва. Става дума за 5 ред код




*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2025 Dir.bg Всички права запазени.