导入工作表时,日期更改为数字格式。 Excel VBA

时间:2014-10-07 07:31:27

标签: excel vba date excel-vba format

任何人都知道如何解决这个问题?在导入数据之前,打开时日期似乎没问题,这是格式:

Release Date    Created
24/04/2014      10/03/2014 20:32

但是在我的工作簿上导入新的工作表后,日期将更改为下面显示的5位数字。

Release Date    Created
41753           41708.85556

导入我的工作表时,我该如何解决问题?以下是我将代码表导入项目的代码。

Sub ImptSht()
    Dim altwb As Workbook
    Dim FilePathalt As String
    Dim activeWB As Workbook

    Set activeWB = Application.ActiveWorkbook

    FilePathalt = "C:\DataSheet\workbook.xls"

    Application.ScreenUpdating = False
    Application.DisplayAlerts = False

    Set altwb = Application.Workbooks.Open(FilePathalt, Local:=True)

    altwb.Worksheets(1).Copy After:=activeWB.Sheets(activeWB.Sheets.Count)
    altwb.Close False

    activeWB.Sheets("shet").Cells.AutoFilter
    activeWB.Sheets("shet").Cells.ClearFormats

    Application.ScreenUpdating = True
    Application.DisplayAlerts = True

End Sub

非常感谢任何帮助!

2 个答案:

答案 0 :(得分:2)

ClearFormats正在这样做。 松散的说法。

答案 1 :(得分:1)

显示的数字代表日期值。要将其转换为日期格式,请选择要转换为日期的列,并使用NumberFormat属性,如下所示:

'Change the column letter to the applicable one
Columns("A:A").NumberFormat = "m/d/yyyy"