Запускаю форму partnet_f и выбираю из strana_combo (илова кардан (добавить)) появляется другая форма и закрывается нынешняя и добавляю то что хочу добавить... все вроде бы не чего, НО вторая форму не получается закрыть, и когда опят хочу добавить программа ругает... После того я останавливаю программу и когда запускаю заново выдается ошибка run time error 3709 невозможно использование подключения для выполнения операции...
Запускаю форму partnet_f и выбираю из strana_combo (илова кардан (добавить)) появляется другая форма и закрывается нынешняя и добавляю то что хочу добавить... все вроде бы не чего, НО вторая форму не получается закрыть, и когда опят хочу добавить программа ругает... После того я останавливаю программу и когда запускаю заново выдается ошибка run time error 3709 невозможно использование подключения для выполнения операции...PYCTAM
Создавайте подключение по мере необходимости,зачем держать его открытым. Аналогично подправте код на открытие книги
[vba]
Код
Private Sub UserForm_Initialize() Dim sql As String If flag_strana = True Then Unload strana_f flag2 = False flag = True flag_strana = False calendar.Show data.Caption = sana Set rs = New ADODB.Recordset Set cn = New ADODB.Connection cn.Open ConnectionString:="Provider=Microsoft.ACE.OLEDB.12.0;" & _ "Data Source=" & ThisWorkbook.Path & "/tst.accdb" & ";" If cn.State <> 1 Then Exit Sub sql = "select distinct faculta from omuzgoron order by faculta" rs.Open sql, cn, adOpenStatic, adLockBatchOptimistic For i = 1 To rs.RecordCount strana_сombo.AddItem rs.Fields(0).Value rs.MoveNext Next i strana_сombo.AddItem "(Илова кардан)" rs.Close cn.Close Set cn = Nothing End Sub
[/vba]
Создавайте подключение по мере необходимости,зачем держать его открытым. Аналогично подправте код на открытие книги
[vba]
Код
Private Sub UserForm_Initialize() Dim sql As String If flag_strana = True Then Unload strana_f flag2 = False flag = True flag_strana = False calendar.Show data.Caption = sana Set rs = New ADODB.Recordset Set cn = New ADODB.Connection cn.Open ConnectionString:="Provider=Microsoft.ACE.OLEDB.12.0;" & _ "Data Source=" & ThisWorkbook.Path & "/tst.accdb" & ";" If cn.State <> 1 Then Exit Sub sql = "select distinct faculta from omuzgoron order by faculta" rs.Open sql, cn, adOpenStatic, adLockBatchOptimistic For i = 1 To rs.RecordCount strana_сombo.AddItem rs.Fields(0).Value rs.MoveNext Next i strana_сombo.AddItem "(Илова кардан)" rs.Close cn.Close Set cn = Nothing End Sub
doober, огромное спасибо... проблема с 3709 решена...а вот проблема с не закрывающей формой никак не получается решить... проста откройте пожалуйста форму strana_f запустив форму partner_f и выбрав из списка strana_combo (илова кардан т.е. добавить) и нажмите кнопку выход... форма strana_fне закрывается и когда опят хочу добавить программа ругает...
doober, огромное спасибо... проблема с 3709 решена...а вот проблема с не закрывающей формой никак не получается решить... проста откройте пожалуйста форму strana_f запустив форму partner_f и выбрав из списка strana_combo (илова кардан т.е. добавить) и нажмите кнопку выход... форма strana_fне закрывается и когда опят хочу добавить программа ругает...PYCTAM
doober, ещё раз огромное-огромное спасибо. тут другая проблема у меня нарисовалась, незнаю именно когда, но переодический появляется это злощасная ошибка... закрываю книгу и открываю заново проблема исчезает...
doober, ещё раз огромное-огромное спасибо. тут другая проблема у меня нарисовалась, незнаю именно когда, но переодический появляется это злощасная ошибка... закрываю книгу и открываю заново проблема исчезает...PYCTAM
Ответ в моем первом посте. У вас обнуляется публичная переменная строки подключения Уберите с публичных переменных подключение и рекордсет. Создавайте их в процедуре и закрывайте
Ответ в моем первом посте. У вас обнуляется публичная переменная строки подключения Уберите с публичных переменных подключение и рекордсет. Создавайте их в процедуре и закрывайтеdoober
doober, очень Вам благодарен за все... тут ещё одна не понятно для меня ситуация получилась... хочу ограничить ввод символов на текстовое поле мейл, чтобы кроме латиницы, цифр, @, ".", _ и - не чего не вводилась.... [vba]
Код
If (KeyAscii < 65 Or KeyAscii > 91) And (KeyAscii < 97 Or KeyAscii > 122) And (KeyAscii < 48 Or KeyAscii > 58) And KeyAscii <> 64 And KeyAscii <> 46 And KeyCode <> 45 And KeyAscii <> 95 Then KeyAscii = 0
[/vba] Все нормально работает кроме символа -... Почему???
doober, очень Вам благодарен за все... тут ещё одна не понятно для меня ситуация получилась... хочу ограничить ввод символов на текстовое поле мейл, чтобы кроме латиницы, цифр, @, ".", _ и - не чего не вводилась.... [vba]
Код
If (KeyAscii < 65 Or KeyAscii > 91) And (KeyAscii < 97 Or KeyAscii > 122) And (KeyAscii < 48 Or KeyAscii > 58) And KeyAscii <> 64 And KeyAscii <> 46 And KeyCode <> 45 And KeyAscii <> 95 Then KeyAscii = 0
[/vba] Все нормально работает кроме символа -... Почему???PYCTAM
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Select Case KeyAscii Case 45, 46, 48 To 57, 64 To 90, 95, 97 To 122 Case Else KeyAscii = 0 End Select End Sub
[/vba]
Так понагляднее [vba]
Код
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger) Select Case KeyAscii Case 45, 46, 48 To 57, 64 To 90, 95, 97 To 122 Case Else KeyAscii = 0 End Select End Sub