将信息从Access传递到Excel时的日期格式问题

时间:2015-10-05 13:22:44

标签: vb.net excel date ms-access

只是为了文档和未来的读者,问题已经解决,答案在我和@varocarbas的讨论中

我的应用程序正在从访问数据库中读取几列,并将这些列连接到现有数据表中。数据库中的一列具有日期,该列在数据库和数据表的数据列中配置为日期和时间列。问题是,当我把它拉到excel时,某些的日期表现在相反方向(我认为这个术语是“英语日期”)。我的意思是“行为”,是excel将monthes视为日期和日期作为月份,例如2015年9月应该是11的日期excel公式月(2015年9月11日)显示这个月是十一月而不是九月。 此外,访问列中的日期值来自sharepoint列表,该列表也配置为dateandtime ..我有一个填充,这个行为可能属于excel(?), 这是我的代码的重要部分:

' declaring the dateandtime column
  Dim colString As DataColumn = New DataColumn("changed")
  colString.DataType = System.Type.GetType("System.DateTime")
  UnitedTable.Columns.Add(colString)

从数据库存储:

If Not (IsDBNull(UnitedTable.Rows(i).Item("spcall"))) Then
    spcall = UnitedTable.Rows(i).Item("spacll")
    rowNum = Searchbinary(spcall) ' check that spcall exist in Projects table via binary search
    If rowNum > -1 Then
        UnitedTable.Rows(i).Item("somecolumn") = db.ReadDataSet.Tables(0).Rows(rowNum).Item("PmUserName").ToString
        UnitedTable.Rows(i).Item("somecolumn") = db.ReadDataSet.Tables(0).Rows(rowNum).Item("OpertionalStatus").ToString
        UnitedTable.Rows(i).Item("somecolumn") = db.ReadDataSet.Tables(0).Rows(rowNum).Item("CrmCallNum").ToString
        UnitedTable.Rows(i).Item("somecolumn") = db.ReadDataSet.Tables(0).Rows(rowNum).Item("OperationStart").ToString
        UnitedTable.Rows(i).Item("somecolumn") = db.ReadDataSet.Tables(0).Rows(rowNum).Item("Approved").ToString
        UnitedTable.Rows(i).Item("somecolumn") = db.ReadDataSet.Tables(0).Rows(rowNum).Item("GeneralStatus").ToString
        UnitedTable.Rows(i).Item("changed") = db.ReadDataSet.Tables(0).Rows(rowNum).Item("Changed")
    Else
        ' the spcall not exist add it to arraylist
        SpCalls_NotExist.Add(spcall)
        'UnitedTable.Rows(i).Delete()
    End If

然后我用嵌套循环将它填充到excel。

0 个答案:

没有答案