Avatar billede Slettet bruger
29. november 2012 - 17:41 Der er 10 kommentarer og
1 løsning

Function returnerer kun nul

Hej

Jeg prøver at lave en funktion, som kørers fra Excel og som henter et bestemt id fra en record. Der er kun ét id som opfylder begge kriterier.
Der kommer ikke nogen errors, men der kommer heller ikke noget id og jeg har checket at recorden eksiterer i access db.

Min funktion og nede under mit kald af funktionen.

Public Function GetPlanID(fBU As String, fID As Integer) As Integer

    Dim rs As ADODB.Recordset
    Set rs = New ADODB.Recordset
    Dim sqlQuery As String
   
    sqlQuery = "SELECT Id FROM Plans WHERE Unit = '" & fBU & "' AND PlanID = " & fID

    ' Make sure we're connected to the database.
    If Connect Then
        Set Command = New ADODB.Command

        With Command
            .ActiveConnection = connection
            .CommandText = sqlQuery
            .CommandType = adCmdText
        End With

        rs.Open Command.Execute(recordsAffected)
        rs.ActiveConnection = Nothing
        Set Execute = rs
        Set Command = Nothing
    End If


iDBID = GetPlanID(sUnit, iPlanID)
Avatar billede arne_v Ekspert
29. november 2012 - 17:58 #1
ja

jeg kan ikke se noget sted i den kode hvor du saetter en funktions retur vaerdi
Avatar billede Slettet bruger
29. november 2012 - 19:07 #2
Aha - jeg er lidt ny i det her.
Hvordan vil det se ud?
Avatar billede arne_v Ekspert
29. november 2012 - 19:11 #3
Et eller andet sted inden i funktionen skal der vel staa:

GetPlanID = noget
Avatar billede Slettet bruger
29. november 2012 - 19:13 #4
Min sql statment reutrnere kun én værdi som er et helt tal - jeg har testet det i db. Men hvor kommer det ud henne?

Hele funktionen skal finde denne værdi baseret på de input de får - men det er som om den ikke virker :-)
Avatar billede arne_v Ekspert
29. november 2012 - 19:19 #5
Den varedi skal vel fiskes ud af rs
Avatar billede Slettet bruger
29. november 2012 - 19:31 #6
Jeg er vist lidt på bar bund - jeg syntes ikke at dette virker.

GetPlanID = rs
Avatar billede arne_v Ekspert
29. november 2012 - 19:49 #7
Du skal ihvertfald angive feltnavn.

proev:

GetPlanID = rs("id")
Avatar billede Slettet bruger
29. november 2012 - 20:05 #8
Mange tak.
Vil du sende et svar?
Avatar billede arne_v Ekspert
29. november 2012 - 20:14 #9
svar
Avatar billede arne_v Ekspert
29. november 2012 - 20:14 #10
det virkede?
Avatar billede Slettet bruger
01. december 2012 - 10:33 #11
Ja - den del med
GetPlanID = rs("id")
Noget at det andet måtte jeg ændre lidt.
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester