Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4   вперед  Ctrl      все
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle
И как-то все же почитать что-нибудь, что ли...

Спасибо за добрый совет, но так много чтива, а так хочется быстро-)
25 май 19, 20:06    [21893930]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle,

Do - просто не убирается, ещё и Until - убрал, начинает ругаться на Set....
25 май 19, 20:10    [21893932]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
Wawan2005,

добавил Loop
Private Sub Кн_Литерка_Click()
Dim rs33 'As Recordset
Set rs33 = CurrentDb.OpenRecordset("select * [Оборудование ОВО]")
Do Until rs33.EOF
If rs33.[Наименование] <> Me.П_Дан_Подч_2_УО Then
    oshibka = "Не определён вид охраны"
    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
    DoCmd.OpenForm "Ф_Ошибка"
Else
    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
    Dim stDocName As String
    Dim stLinkCriteria As String
    stDocName = "Данные_Литерка"
    DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Loop
End Sub

ругается на Set...
25 май 19, 20:12    [21893933]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
Wawan2005
__Michelle,

Do - просто не убирается, ещё и Until - убрал, начинает ругаться на Set....

М-м-м-м.....

То есть, пытаетесь убрать всего две буквы "Do" ?

Экстравагантно.
25 май 19, 20:32    [21893935]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
Wawan2005
Wawan2005,

Set rs33 = CurrentDb.OpenRecordset("select * [Оборудование ОВО]")

ругается на Set...

А где же FROM ?
25 май 19, 20:35    [21893936]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle,

Сделал так
Private Sub Кн_Литерка_Click()
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Dim rs33 'As Recordset
Set rs33 = CurrentDb.OpenRecordset("select * from [Оборудование ОВО]")
Do Until rs33.EOF
If rs33!Наименование <> Me.П_Дан_Подч_2_УО Then
    oshibka = "Не определён вид охраны"
    DoCmd.OpenForm "Ф_Ошибка"
Else
    Dim stDocName As String
    Dim stLinkCriteria As String
    stDocName = "Данные_Литерка"
    DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
Loop
End Sub


стал открывать Ф_Ошибка, но зависает
25 май 19, 21:16    [21893942]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle,

Я тут последовал Вашему совету и напоролся на интересную вещь
· метод Find предназначен для поиска по значению одного столбца. Он принимает в качестве параметра критерий поиска, насколько нужно отступить от исходной позиции, направление поиска и откуда нужно начать поиск. Очень удобно, что при определения критерия поиска можно использовать оператор Like с подстановочными символами. При обнаружении нужной записи метод Find переставляет курсор на найденную запись, если же запись не обнаружена, то курсор устанавливается на EOF (или BOF, если поиск был назад). Например, чтобы найти все немецкие фирмы в нашем Recordset для таблицы Customers, можно использовать код вида

rs.Find "country = 'Germany'"

Do While Not rs.EOF

            Wscript.Echo "Название фирмы: "; rs.Fields("CompanyName")

            mark = rs.Bookmark

            rs.Find "country = 'Germany'", 1, , mark

Loop



Помогите мне (точнее, если можно, напишите кусок кода) на основе этого
25 май 19, 21:20    [21893944]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
Wawan2005
но зависает

А в 21893926 так и написано:
__Michelle 
И получить бесконечный цикл...
25 май 19, 21:59    [21893958]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
Wawan2005
__Michelle,

.................................
.................................
Помогите мне (точнее, если можно, напишите кусок кода) на основе этого

Нет, не можно.
Во-первых, я пишу сейчас с планшета.
Во-вторых, это было бы медвежьей услугой - Вы опять наскоро склеите коллаж из разнородных кусков,
а понимания не прибавится.
25 май 19, 22:06    [21893961]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle,

Если честно, мне понятие и не нужно, мне нужно чтобы заработала база,
а учится 44 летнему майору полиции думаю уже поздно.

Может по позже всё таки вспомните про меня?! и чиркните кусочек.
25 май 19, 22:09    [21893963]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
Wawan2005,

Может.
Но не обещаю.
Сегодня вряд ли.
25 май 19, 22:20    [21893964]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle,

Да я понял, заранее спасибо.
25 май 19, 22:26    [21893965]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
DarkMan
Member

Откуда:
Сообщений: 513
__Michelle
Во-вторых, это было бы медвежьей услугой -

Истину глаголите ,друХ мой. :))
__Michelle
Может.
Но не обещаю.
Сегодня вряд ли.

Сударыня , не поддавайтесь на провокации . Учиться можно и в 50 , и в 60 , а в 45 жизнь только начинается.
25 май 19, 22:42    [21893972]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Лапух
Member

Откуда: Стойбище № 7
Сообщений: 842
DarkMan
...Учиться можно и в 50 , и в 60...

Вредный и злой ты какой та.
А как же - ХАЛЯВА? Картинка с другого сайта.
25 май 19, 22:46    [21893974]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
Да подставить свои формы и поля то не сложно, но там как то ДОА или АДО надо прибздюхать

Private Sub Кн_Литерка_Click()
?????????????
?????????????
?????????????
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
rs.Find "[Наименование] = Me.Me.П_Дан_Подч_2_УО"

Do While Not rs.EOF
'            Wscript.Echo "Название фирмы: "; rs.Fields("CompanyName")
            mark = rs.Bookmark
            rs.Find "[Наименование] = Me.Me.П_Дан_Подч_2_УО'", 1, , mark
Loop

If mark  <> Me.П_Дан_Подч_2_УО Then
    oshibka = "Не определён вид охраны"
    DoCmd.OpenForm "Ф_Ошибка"
Else
    Dim stDocName As String
    Dim stLinkCriteria As String
    stDocName = "Данные_Литерка"
    DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
End Sub


а так то в принципе всё готово
P.S.: По крайней меря я так думаю-)
25 май 19, 23:10    [21893979]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
Wawan2005
Да подставить свои формы и поля то не сложно, но там как то ДОА или АДО надо прибздюхать

Private Sub Кн_Литерка_Click()
?????????????
?????????????
?????????????
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
rs.Find "[Наименование] = Me.Me.П_Дан_Подч_2_УО"

Do While Not rs.EOF
'            Wscript.Echo "Название фирмы: "; rs.Fields("CompanyName")
            mark = rs.Bookmark
            rs.Find "[Наименование] = Me.Me.П_Дан_Подч_2_УО'", 1, , mark
Loop

If mark  <> Me.П_Дан_Подч_2_УО Then
    oshibka = "Не определён вид охраны"
    DoCmd.OpenForm "Ф_Ошибка"
Else
    Dim stDocName As String
    Dim stLinkCriteria As String
    stDocName = "Данные_Литерка"
    DoCmd.OpenForm stDocName, , , stLinkCriteria
End If
End Sub


а так то в принципе всё готово
P.S.: По крайней меря я так думаю-)


Вместо всей этой чуши.
Private Sub &#202;&#237;_&#203;&#232;&#242;&#229;&#240;&#234;&#224;_Click()
 If DCount("*", "[&#206;&#225;&#238;&#240;&#243;&#228;&#238;&#226;&#224;&#237;&#232;&#229; &#206;&#194;&#206;]", "&#205;&#224;&#232;&#236;&#229;&#237;&#238;&#226;&#224;&#237;&#232;&#229; = " & Me.&#207;_&#196;&#224;&#237;_&#207;&#238;&#228;&#247;_2_&#211;&#206;) = 0 Then
  oshibka = "&#205;&#229; &#238;&#239;&#240;&#229;&#228;&#229;&#235;&#184;&#237; &#226;&#232;&#228; &#238;&#245;&#240;&#224;&#237;&#251;"
  DoCmd.OpenForm "&#212;_&#206;&#248;&#232;&#225;&#234;&#224;"
 Else
  DoCmd.OpenForm "&#196;&#224;&#237;&#237;&#251;&#229;_&#203;&#232;&#242;&#229;&#240;&#234;&#224;"
 End If
End Sub
26 май 19, 13:08    [21894073]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
Private Sub Кн_Литерка_Click()
 If DCount("*", "[Оборудование ОВО]", "Наименование = " & Me.П_Дан_Подч_2_УО) = 0 Then
  oshibka = "Не определён вид охраны"
  DoCmd.OpenForm "Ф_Ошибка"
 Else
  DoCmd.OpenForm "Данные_Литерка"
 End If
End Sub
26 май 19, 13:09    [21894075]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
sdku
Member

Откуда: Краснодар
Сообщений: 5902
__Michelle
....Вместо всей этой чуши...
ТСу об этом говорилось уже давно
sdku
....существуют и другие способы определения числа записей в запросе,например иметь сохраненный запрос и старым-добрым Dcount это сделать
С подходом "надо все и сразу" VBA не одолеть...(Я так думаю!-Мимино)
26 май 19, 14:15    [21894105]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
sdku
С подходом "надо все и сразу" VBA не одолеть...(Я так думаю!-Мимино)

Вряд ли ТС собирается одолевать VBA, сам же говорит "мне понятие и не нужно, мне нужно чтобы заработала база".
26 май 19, 14:22    [21894110]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle,

Здравствуйте, спасибо, что не забыли про меня.
Попробовал, ругается на
 If DCount("*", "[Оборудование ОВО]", "Наименование = " & Me.П_Дан_Подч_2_УО) = 0 Then


P.S.: На всякий случай перекопировал [Оборудование ОВО], [Наименование], [Me.П_Дан_Подч_2_УО]
вдруг ошибся в написании, а ннет всё правильно, по прежнему ругается.
26 май 19, 20:26    [21894247]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
Как я понял "ТС" - это вы про меня, а почему "ТС"??
26 май 19, 20:27    [21894249]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
__Michelle
Member

Откуда:
Сообщений: 3050
Wawan2005
Как я понял "ТС" - это вы про меня, а почему "ТС"??

Так сокращенно называют автора топика, темы - "ТопикСтартер", калька с английского.

Wawan2005
ругается

Значит, Наименование - текстовое поле, нужны кавычки.
If DCount("*", "[Оборудование ОВО]", "Наименование = """ & Me.П_Дан_Подч_2_УО & """") = 0 Then
26 май 19, 21:42    [21894268]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle
Значит, Наименование - текстовое поле, нужны кавычки.


не помогло
26 май 19, 22:01    [21894279]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
vmag
Member

Откуда: MP
Сообщений: 3158
Wawan2005
не помогло


Раз учиться не охота и некогда, Вам нужно немного отвлечься... ну например, пойти и поймать завтра пару - тройку преступников, всё ж майор полиции...
26 май 19, 22:07    [21894281]     Ответить | Цитировать Сообщить модератору
 Re: Как в случае ошибки кода, сделать чтобы запускалась нужная форма.  [new]
Wawan2005
Member

Откуда: Волгоград
Сообщений: 347
__Michelle,
Пишет
Ошибка синтаксиса (пропущен оператор) в выражении запроса
'Наименование = "РСПИ Струна-5 Б-5 GSM+".
26 май 19, 22:10    [21894282]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 2 [3] 4   вперед  Ctrl      все
Все форумы / Microsoft Access Ответить