Avatar billede darth-domino Nybegynder
05. juli 2005 - 12:30 Der er 4 kommentarer og
1 løsning

Hjælp med Recordset

Jeg får fejl når jeg henter noget i denne sætning:

Sheets("Hovedark").Range("D62").Value = CDec(rsInletFlangeData("TotalHeight"))

Det kan jeg osse godt forstå... det er fordi at i databasen står der - og ikke et tal!

Nogen ideer til hvad jeg kan gøre??
Avatar billede jpvj Nybegynder
05. juli 2005 - 12:43 #1
on error goto fejl
  Sheets("Hovedark").Range("D62").Value = CDec(rsInletFlangeData("TotalHeight"))
  on error goto 0
  goto ok
fejl:
  ' Håndter fejlen her, ex.
  Sheets("Hovedark").Range("D62").Value = 0
ok:
Avatar billede darth-domino Nybegynder
05. juli 2005 - 12:56 #2
Du ikke da jeg allerede har nogen errorhandlere!
Avatar billede darth-domino Nybegynder
05. juli 2005 - 12:57 #3
On Error GoTo ErrorHandler

    Application.ScreenUpdating = False
    Application.EnableEvents = False

    Dim rsInletFlangeData As dao.Recordset
   
    Dim InletFlangeDN As String
    Dim InletFlangeStandard As String
    Dim InletFlangeMateriale As String
   
    InletFlangeDN = ""
    InletFlangeMateriale = ""
    InletFlangeStandard = ""
   
    InletFlangeDN = Sheets("Hovedark").Range("g_dDN_mm")
    InletFlangeMateriale = Sheets("Hovedark").Range("L58")
    InletFlangeStandard = Sheets("Hovedark").Range("L59")
   
    Set datDB = DBEngine.Workspaces(0).OpenDatabase("C:\MCAU\DATA\MCAU menu datalister\MCAUdatabase.mdb")
    strSQL = "Select * FROM StandardFlanger Where FlangeDN Like '" & InletFlangeDN & "' AND Standard like '" & InletFlangeStandard & "'"
    Set rsInletFlangeData = datDB.OpenRecordset(strSQL)
   
    If Sheets("Hovedark").Range("FLI") = falsk And Sheets("Hovedark").Range("FLO") = falsk Then
        Sheets("Hovedark").Range("U13") = ""
        Sheets("Hovedark").Range("U14") = ""
        GoTo Oprydning
    End If

    If InletFlangeStandard = "Spec." Then
        GoTo SpecialFlange
    End If

    Do Until rsInletFlangeData.EOF
        Sheets("Hovedark").Range("ø_inlet").Value = CDec(rsInletFlangeData("ID"))
        Sheets("Hovedark").Range("D61").Value = CDec(rsInletFlangeData("OD"))
        Sheets("Hovedark").Range("D62").Value = CDec(rsInletFlangeData("TotalHeight"))
        Sheets("Hovedark").Range("D63").Value = CDec(rsInletFlangeData("PCD"))
        Sheets("Hovedark").Range("D64").Value = rsInletFlangeData("n") & "xØ" & rsInletFlangeData("d2")
        Sheets("Hovedark").Range("D65").Value = CDec(rsInletFlangeData("Weight"))
        Sheets("Hovedark").Range("D66").Value = CDec(rsInletFlangeData("Bertelkant"))
        Sheets("Hovedark").Range("D73") = InletFlangeStandard & ", OD=" & CDec(rsInletFlangeData("OD")) & ", PCD=" & CDec(rsInletFlangeData("PCD")) & ", nxd2=" & rsInletFlangeData("n") & "xØ" & rsInletFlangeData("d2")
        Sheets("Hovedark").Range("U13").Value = rsInletFlangeData("Flangekode")
       
        If Sheets("Hovedark").Range("L60") = True Then
            Sheets("Hovedark").Range("U14").Value = rsInletFlangeData("FixedFlange")
        Else
            Sheets("Hovedark").Range("U14").Value = rsInletFlangeData("LooseFlange")
        End If
       
        Sheets("Hovedark").Range("Y60").Value = CDec(rsInletFlangeData("ID"))
        Sheets("Hovedark").Range("Y61").Value = CDec(rsInletFlangeData("OD"))
        Sheets("Hovedark").Range("Y62").Value = CDec(rsInletFlangeData("TotalHeight"))
        Sheets("Hovedark").Range("Y63").Value = CDec(rsInletFlangeData("PCD"))
        Sheets("Hovedark").Range("Y64").Value = rsInletFlangeData("n") & "xØ" & rsInletFlangeData("d2")
        Sheets("Hovedark").Range("Y65").Value = CDec(rsInletFlangeData("Weight"))
        Sheets("Hovedark").Range("Y66").Value = CDec(rsInletFlangeData("Bertelkant"))
        Sheets("Hovedark").Range("Y73") = InletFlangeStandard & ", OD=" & CDec(rsInletFlangeData("OD")) & ", PCD=" & CDec(rsInletFlangeData("PCD")) & ", nxd2=" & rsInletFlangeData("n") & "xØ" & rsInletFlangeData("d2")
        rsInletFlangeData.MoveNext
        Application.ScreenUpdating = True
        GoTo Oprydning
    Loop

    GoTo Oprydning

SpecialFlange:

    Sheets("Hovedark").Range("D60") = "-"
    Sheets("Hovedark").Range("D61") = "-"
    Sheets("Hovedark").Range("D62") = "-"
    Sheets("Hovedark").Range("D63") = "-"
    Sheets("Hovedark").Range("D64") = "-"
    Sheets("Hovedark").Range("D65").Formula = "=flangeberegning!A74"
    Sheets("Hovedark").Range("D66") = "-"
    Sheets("Hovedark").Range("D71").Formula = "=flangeberegning!B54"
    Sheets("Hovedark").Range("D73") = "=Y74"
    Sheets("Hovedark").Range("U13") = "[GLAT]"
   
    Sheets("Hovedark").Range("Y60") = "-"
    Sheets("Hovedark").Range("Y61") = "-"
    Sheets("Hovedark").Range("Y62") = "-"
    Sheets("Hovedark").Range("Y63") = "-"
    Sheets("Hovedark").Range("Y64") = "-"
    Sheets("Hovedark").Range("Y65").Formula = "=flangeberegning!A74"
    Sheets("Hovedark").Range("Y66") = "-"
    Sheets("Hovedark").Range("Y71").Formula = "=flangeberegning!B54"

    GoTo Oprydning
   
ErrorHandler:
    LogError Err.description, Err.Source, Err.Number, "ARK: Module4 - SUB: FindInletMaterialeData"

Oprydning:
    Application.ScreenUpdating = False
    Application.EnableEvents = False
Avatar billede darth-domino Nybegynder
05. juli 2005 - 13:36 #4
Har løst det:
If rsOutletFlangeData("ID") <> "-" Then Sheets("Hovedark").Range("ø_outlet").Formula = CDec(rsOutletFlangeData("ID")) Else Sheets("Hovedark").Range("ø_outlet").Formula = "-"
Avatar billede darth-domino Nybegynder
05. juli 2005 - 13:36 #5
Svar
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