以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  所需类型是 Int32。  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=143585)

--  作者:刘林
--  发布时间:2019/11/28 18:49:00
--  所需类型是 Int32。

Dim tb As Table = Tables("建档就读台帐_table1")
Dim dlg As New OpenFileDialog \'定义一个新的OpenFileDialog
dlg.Filter= "Excel文件|*.xls;*.xlsx" \'设置筛选器
If dlg.ShowDialog = DialogResult.Ok Then \'如果用户单击了确定按钮
    Dim Book As New XLS.Book(dlg.filename)
    Dim Sheet As XLS.Sheet = Book.Sheets(0)
    Dim bh As Integer
    Dim sjh As Integer
    Dim xm As Integer
    Dim xb As Integer
    Dim csny As Integer
    For i As Integer = 0 To sheet.Cols.count -1
        If sheet(0,i).value = "身份证件号"
            bh =i
        End If
    Next
    For n As Integer = 1 To Sheet.Rows.Count -1
        If sheet(n,bh).text>""
            Dim dr As DataRow  = DataTables("建档就读台帐").Find("身份证件号 =\'" & trim(sheet(n,bh).text) & "\'")
            If dr Is Nothing Then dr = DataTables("建档就读台帐").AddNew()
            For m As Integer =0 To sheet.Cols.count-1
                If trim(sheet(0,m).text)>"" And tb.Cols.Contains(trim(sheet(0,m).text))
                    dr(trim(sheet(0,m).text))=trim(sheet(n,m).text)
                End If
            Next
            dr("归属中心校")=sszxx
            dr("学校")=_usergroup
        End If
    Next    
    For Each r As Row In tb.Rows
        If ValidPIN(r("身份证件号"))
            r("出生日期") = CStr(ReadBirthDay(r("身份证件号")))
            r("性别") = ReadSex(trim(r("身份证件号")))
            Dim tp As TimeSpan = Date.today - CDate(r("出生日期"))
            r("年龄") = Math.Round(tp.TotalDays / 365.2422,2)
        Else
            r("出生日期") = Nothing
            r("性别")=Nothing
            r("年龄") =Nothing
        End  If
    Next    
End If



请问老师,上面代码第一次导入没有问题,如果再导入有如下错误,请问如何改进上面代码

输入字符串的格式不正确。不能在 年龄 列中存储 <>。所需类型是 Int32。
--  作者:有点蓝
--  发布时间:2019/11/29 8:41:00
--  
再导入是指导入同一个文件?

r("年龄") = Cint(tp.TotalDays / 365.2422,2)