Er du sikker på at koden ligger i et modul, der er globalt for din base (og altså ikke i f.eks. en formular)? Har du valgt Insert/Module i VBA editoren?
Synes godt om
Slettet bruger
20. juni 2016 - 12:27#2
Betalingsudtrykket mener jeg ikke skal stå i [ ] - prøv det engang
også mener jeg at du mangler en "end if" til sidst
Tak for svarene! @fdata: Ja, koden er indsat i et nyt modul i VBA editoren. Nu ligger den som et modul i min access database (den er synlig under "Moduler" når jeg lukker VBA editoren). Hvis jeg fremsøger funktionen i min query fremfinder den også "FindTal"-funktionen. Den ser bare ikke ud til at virke...
@Thomas: Jeg har nu ændret koden til dette: --- Option Compare Database
Public Function FindTal(Ind As String) As Integer Dim I As Integer For I = 1 To Len(Ind)
If IsNumeric(Mid(Ind, I, 1)) Then FindTal = FindTal & Mid(Ind, I, 1) End If Next If IsEmpty(FindTal) Then FindTal = 0 End If
End Function --- Samt fjernet [ ] fra mit felt i query-forespørgslen - jeg får desværre stadig samme fejl. Tror I der foreligger en fejl i scriptet?
Her lige tjekket din funktion. Brug den oprindelige. Den spiller. En lille test-query ser også ud til at spille: SELECT Betalingsbetingelser, FindTal(Betalingsbetingelser) AS Nettodage FROM Tabel1; -------- Betalingsbetingelser Nettodage N7 7 10N 10 LM10 10 LM 0 --------
Jeg har testet med alle din værdier. Intet problem.
Til gengæld er det måske et problem at du har gemt modulet med navnet FindTal. Det er jo det samme som funktionens navn. Access er ikke glad for at man bruger samme betegnelse for to forskellige objekter/funktioner.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.