🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.bazy-danych.msaccess
Article #137693

Re: Kryterium kwerendy z pola formularza funkcja In()

#137693
From: Zbigniew Bratko
Date: Sun, 06 Sep 2020 21:27
59 lines
2823 bytes
W dniu 04.09.2020 o 19:27, leku pisze:
> Mam na formularzu IMPORT w polu Wykonawcy dane jak poniżej
> „Kowalski Jan” , „Nowak Andrzej”
> 
> Mogę mieć też tak
> „Kowalski Jan” ; „Nowak Andrzej”
> 
> Jak poprawnie przekazać kryterium z tego pola do kwerendy
> Wykorzystując funkcję In() accessa.
> 
> Próbuję tak
> In([Forms]![IMPORT]![Wykonawcy]) – nie działa
> In( " & ([Forms]![IMPORT]![Wykonawcy]) & ") - też nie działa  L

[...]

Spróbuj podmienić SQL w kwerendzie. Coś w poniższy sposób:

' masz tabelę "MojaTabela" i korzystasz z kwerendy "MojaKwerenda"
Private Sub btnOpenQuery_Click()
Dim sSQL As String
Dim dbs As DAO.Database
Const cQryName As String = "MojaKwerenda"

     sSQL = "SELECT MojaTabela.*, MojaTabela.Wykonawcy" & _
            " FROM MojaTabela" & _
            " WHERE MojaTabela.Wykonawcy" & _
            " IN (" & FunkcjaWykonawcy() & ");"

     Set dbs = CurrentDb
         With dbs
             ' sprawdź, czy istnieje kwerenda
             If IsObject(.QueryDefs(cQryName)) Then
                 'podmień SQL
                 .QueryDefs(cQryName).SQL = sSQL
             Else
                 'utwórz kwerendę
                 .CreateQueryDef cQryName, sSQL
             End If
         End With
     Set dbs = Nothing

     DoCmd.OpenQuery cQryName, acViewNormal, acEdit

End Sub

'_____________________________________________
Private Function FunkcjaWykonawcy() As String

     ' Tutaj musisz sam napisać funkcję, która przetworzy
     ' nazwiska wybranych Wykonawców do postaci poniżej:

     FunkcjaWykonawcy = "'Nowak Andrzej','Kowalski Jan'"

End Function

-- 
Pozdrawiam
Zbigniew Bratko
Technical Details
Message-ID: <5f55545a$0$542$65785112@news.neostrada.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!aioe.org!peer02.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
References: <5f5278ec$0$525$65785112@news.neostrada.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!news.samoylyk.net!aioe.org!peer02.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-02.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
Subject: Re: Kryterium kwerendy z pola formularza funkcja In()
Newsgroups: pl.comp.bazy-danych.msaccess
References: <5f5278ec$0$525$65785112@news.neostrada.pl>
From: Zbigniew Bratko <adminBEZTEGO@accdb.pl>
Date: Sun, 6 Sep 2020 23:27:34 +0200
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.12.0
MIME-Version: 1.0
In-Reply-To: <5f5278ec$0$525$65785112@news.neostrada.pl>
Lines: 85
Message-ID: <5f55545a$0$542$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 5.172.237.91
X-Trace: 1599427674 unt-rea-a-02.news.neostrada.pl 542 5.172.237.91:10567
X-Complaints-To: abuse@news.neostrada.pl
X-Received-Bytes: 3264
X-Received-Body-CRC: 2066902057
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit