17. februar 2011 - 20:14Der er
5 kommentarer og 1 løsning
Runtime error
Hej VB .Net Tidligere har følgende alders funktion fungeret udmærket men nu får jeg følgende fejl: Indekset og længden skal referere til en placering i strengen Parameternavn: length
Kode: Function Age(ByVal s As String) As Integer
Try Dim birthday As DateTime = DateTime.ParseExact(s.Substring(0, 6), "ddMMyy", CultureInfo.InvariantCulture) Dim today As DateTime = DateTime.Now Dim n As Integer If Now.Month > birthday.Month Or (Now.Month = birthday.Month And Now.Day >= birthday.Day) Then n = today.Year - birthday.Year Else n = today.Year - birthday.Year - 1 End If n = (n + 100) Mod 100 Return n
Catch ex As Exception MessageBox.Show(ex.Message) End Try
fordi den dato du sender til metoden ikke er ddMMyy substring tager fra start (0) til length (6), og der er ikke 6 karaktere i den streng du sender til metoden.
INTET hvilket er det mystiske. Koden bliver primært anvendt ved åbning af en form hvor den fungerer fint og siden med sekunders mellemrum kaldt vha af en timer ...HER FEJLER DEN
Jeg fandt ud af problemet som opstod når en anden kode tømte cpr-feltet hvilket udløste fejl i ovenstående kode. Det forklarer dog ikke helt hvorfor det tidligere fungerede men pyt. Derfor accepteres "misbruger"'s løsning :-)
Synes godt om
Ny brugerNybegynder
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.