Ik heb weer een probleem met access waar ik gek van wordt. Ik heb in een module een functie gebouwd, die uit een database een aantal waarden samenvoegd en teruggeeft als een string (voor zover ik weet werkt dit), als ik direct vanuit VBA deze functie aanroep werkt hij correct. Echter wil ik deze functie ook aanroepen vanuit een tekstvak in het "details gebied" van een rapport.
Ver kom ik niet want invoeren lukt al niet. Na het invoeren geeft hij de foutmelding: "De syntaxis van de expressie die u heb opgegeven, is nogeldig". Terwijl deze opgaaf van mijn functie in VBA zelf (zonder het = teken) primga functioneert. Heb ook al met de "[]"gewerkt maar dat mocht niet baten.
Het probleem zal wel ongelofelijk eenvoudig zijn
, maar heb echt got afgezocht, google en microsoft, waarop in de voorbeelden dezelfde methode wordt gegeven, die ik nu gebruik, zie Functies voor het berekenen en weergeven van Datum/tijd-waarden in Access
Ver kom ik niet want invoeren lukt al niet. Na het invoeren geeft hij de foutmelding: "De syntaxis van de expressie die u heb opgegeven, is nogeldig". Terwijl deze opgaaf van mijn functie in VBA zelf (zonder het = teken) primga functioneert. Heb ook al met de "[]"gewerkt maar dat mocht niet baten.
Het probleem zal wel ongelofelijk eenvoudig zijn
code:
1
| =VoegCellenSamen("eigenschappen", "Eigenschap", 21) |
code:
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
| Option Compare Database Option Explicit Function VoegCellenSamen(Tabel As String, VeldNaam As String, Projectnummer As Integer) 'Deze functie opend een tabel en rukt alle waarden uit de tabel en gooit deze in een string' 'die hij vervolgens uitspuugd.' Dim sql As String Dim dbs As Database Dim lijst As String Dim rst As Recordset sql = "SELECT * FROM " & Tabel & " WHERE ((Projectnummer) = " & Projectnummer & ")" Set dbs = CurrentDb Set rst = dbs.OpenRecordset(sql) Do Until rst.EOF lijst = lijst + rst.Fields(VeldNaam).Value & ", " rst.MoveNext Loop Trim (lijst) lijst = Left(lijst, Len(lijst) - 2) Trim (lijst) VoegCellenSamen = lijst End Function |