|
|
|
два листбокса....
|
|||
|---|---|---|---|
|
#18+
Подскажите, пожалуйста, где ошибка?\r \r у меня в форме два листбокса, выбрав значение в одном, я выбираю одно или несколько значний в другом , затем на кнопке висит вот такой код:\r \r Private Sub Кнопка9_Click()\r Dim lb As ListBox\r Dim strWhere As String\r Dim strCriteria As String\r Dim stDocName As String\r Dim i As Long\r Dim lb2 As ListBox\r Dim strWhere2 As String\r Dim strCriteria2 As String\r \r \r Set lb2 = Me.[CodeD]\r \'MsgBox lb2\r If lb2.ItemsSelected.Count <> 0 Then\r \r strCriteria2 = "buys.CodeD Like \'" \'\r strWhere2 = strCriteria2\r For i = 0 To lb2.ListCount - 1\r If lb2.Selected(i) Then\r If strWhere2 = strCriteria2 Then\r strWhere2 = strWhere2 & lb2.Column(0, i) & "\'"\r Else\r strWhere2 = strWhere2 & " OR " & strCriteria2 & lb2.Column(0, i) & "\'"\r End If\r End If\r Next\r MsgBox strWhere2\r \r End If\r \r Set lb = Me.[ChoiceTM]\r \'MsgBox lb ---------> вот здесь значенье второго листбокса при отстутствии нсвязного выделения еще уникальное (то которое должно быть) а при \r \t\t\tпростом несвязанном выделении тут выдается ошибка: run-time error 94, Invalid Use of Null.\r If lb.ItemsSelected.Count <> 0 Then\r \r strCriteria = "buys.CodeTM Like \'" \'\r strWhere = strCriteria\r For i = 0 To lb.ListCount - 1\r If lb.Selected(i) Then\r If strWhere = strCriteria Then\r strWhere = strWhere & lb.Column(0, i) & "\'"\r Else\r strWhere = strWhere & " OR " & strCriteria & lb.Column(0, i) & "\'"\r End If\r End If\r Next\r MsgBox strWhere\r ----------> а вот тут оно уже продублировано из первого листбокса. :((\r \r End If\r \r strWhere = strWhere2 & " AND " & strWhere\r \r MsgBox strWhere\r On Error GoTo Err_ChoiceTM_L\r stDocName = "reportDistribToShopTM2"\r DoCmd.OpenReport stDocName, acPreview, , strWhere\r \r Exit_ChoiceTM_L:\r Exit Sub\r \r Err_ChoiceTM_L:\r \'MsgBox Err.Description\r Resume Exit_ChoiceTM_L\r End Sub\r \r это моя вольная интерпритация совета Hummer\'а по моему прошлому вопросу вот здесь /topic/56586&hl= \r \r Вот после второго IF ( второй листбокс) значение strWhere дублируется из strWhere2 , другими словами теряется то что я выбрал во втором листбоксе.\r \r Как исправить это сие? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2003, 04:06 |
|
||
|
два листбокса....
|
|||
|---|---|---|---|
|
#18+
Какой-то длинный текст, некогда читать. Поставь брикпойнт, запусти программу, поcредством f8 иди по строчкам, и смотри, где ошибка. Если в процессе выполнения навести курсор мышки на переменную - вылезет ее содержимое. Если в ctrl-g написать ?myfunct(1) - выполнится myfunct. И сам все найдешь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2003, 10:03 |
|
||
|
два листбокса....
|
|||
|---|---|---|---|
|
#18+
последовал Вашему совету, и вот что выяснил: мой листбок формируется в источнике данных- запросе, в этой же форме. При этом условием отбора являются значения из первого листбокса. если я ставлю второй листбокс на одинарное выделение, то все отлично сортируется и выводитсся в отчете , а если как сейчас, выделение простое, то вот какое сообщение на брекПоинте висит. If lb.ItemsSelected.Count <> 0 Then -----> вот здесь object variable or with Block variable not set если я в первом листбоксе выделил третье поле, а во втором первое и пятое, то значения этоих выделений второго листбокса теряются, а вместо них там висит значение выделения первого листбокса. в акссесе я чайник.. :-\ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2003, 17:45 |
|
||
|
два листбокса....
|
|||
|---|---|---|---|
|
#18+
ура!!! сам дошел!!! :-)) проблема была вот в чем strWhere = strWhere & lb.Column(0, i) & "'" Else strWhere = strWhere & " OR " & strCriteria & lb.Column(0, i) & "'" а надо было взять второй лист бокс!!! strWhere = strWhere & lb.Column(1, i) & "'" Else strWhere = strWhere & " OR " & strCriteria & lb.Column(1, i) & "'" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.11.2003, 18:26 |
|
||
|
|

start [/forum/topic.php?fid=45&tid=1677995]: |
0ms |
get settings: |
8ms |
get forum list: |
21ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
145ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
28ms |
get tp. blocked users: |
1ms |
| others: | 214ms |
| total: | 434ms |

| 0 / 0 |
