-Ïîèñê ïî äíåâíèêó

Ïîèñê ñîîáùåíèé â rss_sql_ru_access_programming

 -Ïîäïèñêà ïî e-mail

 

 -Ïîñòîÿííûå ÷èòàòåëè

 -Ñòàòèñòèêà

Ñòàòèñòèêà LiveInternet.ru: ïîêàçàíî êîëè÷åñòâî õèòîâ è ïîñåòèòåëåé
Ñîçäàí: 16.03.2006
Çàïèñåé:
Êîììåíòàðèåâ:
Íàïèñàíî: 4


Êàê ïðàâèëüíî äîáàâèòü óñëîâèå(Åñëè, Òî, Èíà÷å) â ôóíêöèþ VBA

Ïîíåäåëüíèê, 21 Ñåíòÿáðÿ 2015 ã. 16:59 + â öèòàòíèê
Çäðàâñòâóéòå, ïîäñêàæèòå ïîæàëóéñòà
Êàê ïðàâèëüíî äîáàâèòü óñëîâèå(Åñëè, Òî, Èíà÷å) â ôóíêöèþ VBA

 ÔîðìåÒèïËåíòî÷íàÿ íàïèñàíà ôóíêöèÿ äëÿ ôèëüòðàöèè
Sub SetFilter()
    Dim s, sS, sP, sD, sD1, sD2
    If Len(Me.Ïîñòàâùèê & "") = 0 Then sP = "" Else sP = " and [Ïîñòàâùèê]='" & Me.Ïîñòàâùèê & "'"
    If Len(Me.Ãîðîä & "") = 0 Then sS = "" Else sS = " and [Ãîðîä]='" & Me.Ãîðîä & "'"
    sD1 = Format(Nz(Me.Data1, 0), "\#mm\/dd\/yyyy\#")
    sD2 = Format(Nz(Me.Data2, 100000), "\#mm\/dd\/yyyy\#")
    sD = " and [ÄàòàÄîñòàâêè] between " & sD1 & " and " & sD2
    s = " true " & sP & sS & sD
    Me.Filter = s
    Me.FilterOn = True
End Sub


Ïðîáëåìà: Åñëè â ñòîëáèêå [ÄàòàÄîñòàâêè] åñòü õîòü îäíà çàïèñü ñ ïóñòûì çíà÷åíèå, òî ôèëüòð ðàáîòàåò íå êîðåêòíî (èç ðåçóëüòàòà âûïàäàþò çàïèñè ñ "ïóñòîé äàòîé")

Âîïðîñ: [ÊàêÏðàâèëüíîÄîáàâèòü] ñëåäóþùåå óñëîâèå:
Åñëè ( ñòîëáèêå[ÄàòàÄîñòàâêè] åñòü õîòü îäíà çàïèñü ðàâíàÿ "ïóñòîòå"), Òî
s = " true " & sS & sP
针֌
s = " true " & sS & sP & sD

Ï.ñ. Òàê íå ðàáîòàåò

Sub SetFilter()
    Dim s, sS, sP, sD, sD1, sD2
    If Len(Me.Ïîñòàâùèê & "") = 0 Then sP = "" Else sP = " and [Ïîñòàâùèê]='" & Me.Ïîñòàâùèê & "'"
    If Len(Me.Ãîðîä & "") = 0 Then sS = "" Else sS = " and [Ãîðîä]='" & Me.Ãîðîä & "'"
    sD1 = Format(Nz(Me.Data1, 0), "\#mm\/dd\/yyyy\#")
    sD2 = Format(Nz(Me.Data2, 100000), "\#mm\/dd\/yyyy\#")
    sD = " and [ÄàòàÄîñòàâêè] between " & sD1 & " and " & sD2
        /* Òàê íå ðàáîòàåò */
             If (IsNull(Me.ÄàòàÄîñòàâêè) = True) Then
                  s = " true " & sP & sS
             Else
                  s = " true " & sP & sS & sD
             End If
         /* Òàê íå ðàáîòàåò */
    Me.Filter = s
    Me.FilterOn = True
End Sub

http://www.sql.ru/forum/1176401/kak-pravilno-dobavit-uslovie-esli-to-inache-v-funkciu-vba


 

Äîáàâèòü êîììåíòàðèé:
Òåêñò êîììåíòàðèÿ: ñìàéëèêè

Ïðîâåðêà îðôîãðàôèè: (íàéòè îøèáêè)

Ïðèêðåïèòü êàðòèíêó:

 Ïåðåâîäèòü URL â ññûëêó
 Ïîäïèñàòüñÿ íà êîììåíòàðèè
 Ïîäïèñàòü êàðòèíêó