|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
Здравствуйте, уважаемые форумчане! Делаю следующую дичь: на форме большой листбокс с результатами запроса на этой же форме расположены поля, по которым ищем позицию из этого запроса (как узнать текст запроса? из RowSource? сейчас вбито вручную в VBA). один из критериев - километраж нажимаем кнопку - из заполненных полей собирается строка поиска - найденный результат выделяется в листбоксе всё работает хорошо ровно до того момента, пока не пытаюсь найти нулевой километр. машинка бодренько отчитывается что textbox = null, а у меня на этом условие для написания строки критерия Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Как бы лучше победить этот проблемес без перестройки всей этой конструкции? ____ vk.com/taenfox ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2018, 15:25 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
MokeevPкак узнать текст запроса? из RowSource? проверил, работает ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2018, 15:47 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
Isnull(Me.txtKppSrchKM.Value)=false and not Me.txtKppSrchKM.Value="" патамучта.... ""(пустая строка) совсем не равно Null :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2018, 15:54 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
Serg197311Isnull(Me.txtKppSrchKM.Value)=false and not Me.txtKppSrchKM.Value="" патамучта.... ""(пустая строка) совсем не равно Null :)) Отлично! Спасибо! Иду отдыхать с чистой совестью и пустой головой! Хороших выходных) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2018, 15:59 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
Если вас не интересует километраж, то поле пустое (т.е. Null)? Тогда: If Not IsNull(Me!txtKppSrchKM) Then MokeevPIf Left(srch, 4) <> " and" And srch <> "" Then srch = srch & " and" srch = srch & " Pln_KPP_list.KM = " & CStr(Me.txtKppSrchKM.Value) Проще и короче каждое условие добавлять с " and " в начале, а после сборки отбросить первые 5 символов: Код: vbnet 1. 2. 3. 4.
Если километраж - целые числа и символ конкатенации - &, то функция CStr у вас лишняя. Если может быть дробное число, тогда нужна функция Str ... |
|||
:
Нравится:
Не нравится:
|
|||
22.06.2018, 16:11 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
Кривцов АнатолийЕсли вас не интересует километраж, то поле пустое (т.е. Null)? Тогда: If Not IsNull(Me!txtKppSrchKM) Then MokeevPIf Left(srch, 4) <> " and" And srch <> "" Then srch = srch & " and" srch = srch & " Pln_KPP_list.KM = " & CStr(Me.txtKppSrchKM.Value) Проще и короче каждое условие добавлять с " and " в начале, а после сборки отбросить первые 5 символов: Код: vbnet 1. 2. 3. 4.
Если километраж - целые числа и символ конкатенации - &, то функция CStr у вас лишняя. Если может быть дробное число, тогда нужна функция Str Рабочий код получился такой: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64.
То есть проверяю наличие каждого условия и если есть, то прикручиваю его с оператором and Самое главное что нулевой километр ищиццо ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2018, 11:42 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
MokeevP, почти наверняка написала бы иначе(чтобы не зависеть от случайных лишних пробелов) Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2018, 12:59 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
MokeevP, хотя я весьма сомневаюсь, что правильно отработают строки типа , если поле не заполнено(null) Код: vbnet 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2018, 13:02 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
ПЕНСИОНЕРКАMokeevP, хотя я весьма сомневаюсь, что правильно отработают строки типа , если поле не заполнено(null) Код: vbnet 1.
Но, тем не менее, они таки вполне себе работают :) ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2018, 14:51 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
как вариант гляньте это: ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2018, 16:58 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
sdkuкак вариант гляньте это: Премного благодарен! Ваш пример очень познавателен для меня ... |
|||
:
Нравится:
Не нравится:
|
|||
25.06.2018, 23:42 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
sdku, если не затруднит, подскажите как можно отловить событие ввода очередного символа в textbox? Хочется счётчик символов прикрутить... ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2018, 08:30 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
MokeevP, Есть события:изменение (Change),клавиша вверх,вниз,нажатие клавиши (KeyDown, KeyUp, KeyPress) на любом из них можно считать количество нажатий. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2018, 11:56 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
MokeevPесли не затруднит, подскажите как можно отловить событие ввода очередного символа в textbox? Хочется счётчик символов прикрутить...А если пользователи скопипастят? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2018, 12:09 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
ПанургMokeevPесли не затруднит, подскажите как можно отловить событие ввода очередного символа в textbox? Хочется счётчик символов прикрутить...А если пользователи скопипастят? Понял) А как по умному сделать? я поставил ограничение в поле и хочу чтобы пользователь видел что он сначала приближается к критически-длинному словоблудию, а потом что он и вовсе неправ. Пока что пробовал с afterupdate, lostfocus, change и т.д. связать, работает (меняет цифру в надписе) , но, соответственно, когда пользователь кончил. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2018, 12:48 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
На событии change надо проверять св-во Text, а не Value. Зы. Вы считаете, что "когда пользователь кончил", он тут же "меняет цифру в надписе"? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2018, 14:25 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
Кривцов АнатолийНа событии change надо проверять св-во Text, а не Value. Зы. Вы считаете, что "когда пользователь кончил", он тут же "меняет цифру в надписе"? Я имел в виду что когда пользователь кончил со словоблудием он нажимает кнопку и срабатывает одно из событий, которое рассказывает ему что он не прав, исправляет в надписи циферку на отрицательную (на сколько он перевалил за лимит) и кнопку он в итоге не нажимает) Это уже оффтоп, к фильтрации никакого отношения не имеет. Я начал спрашивать вдруг тов. sdku имеет под рукой что-то подходящее, ибно упомЯнул afterupdate ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2018, 15:17 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
sdkuMokeevP, Есть события:изменение (Change),клавиша вверх,вниз,нажатие клавиши (KeyDown, KeyUp, KeyPress) на любом из них можно считать количество нажатий.MokeevP......ибно упомЯнул afterupdate И хде, в моем сообщении, про afterupdate? Не сказано о том,что проверять надо text, а не value,но это Вам пояснили ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2018, 15:35 |
|
Пытаюсь сделать фильтр через textbox, спотыкаюсь об 0 / null
|
|||
---|---|---|---|
#18+
sdkusdkuMokeevP, Есть события:изменение (Change),клавиша вверх,вниз,нажатие клавиши (KeyDown, KeyUp, KeyPress) на любом из них можно считать количество нажатий.MokeevP......ибно упомЯнул afterupdate И хде, в моем сообщении, про afterupdate? Не сказано о том,что проверять надо text, а не value,но это Вам пояснили Ну, не в сообщении, а в примере (ещё раз спасибо!) ) ... |
|||
:
Нравится:
Не нравится:
|
|||
26.06.2018, 15:42 |
|
|
start [/forum/topic.php?fid=45&msg=39664327&tid=1611349]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 150ms |
0 / 0 |