修复Access导出到Excel后的Excel编号格式
此单元格中的数字格式为文本或前面有撇号 我有大约300行,其中有两列数字,每一行都表示这个错误。它不允许我格式化单元格,因为数字不会粘住。它允许我在出现错误时更改它,但只能在错误菜单中更改 以前有人遇到过这种情况吗 我正在使用一个模板文件,用于使用访问代码进行导出:修复Access导出到Excel后的Excel编号格式,excel,ms-access,vba,ms-access-2010,Excel,Ms Access,Vba,Ms Access 2010,此单元格中的数字格式为文本或前面有撇号 我有大约300行,其中有两列数字,每一行都表示这个错误。它不允许我格式化单元格,因为数字不会粘住。它允许我在出现错误时更改它,但只能在错误菜单中更改 以前有人遇到过这种情况吗 我正在使用一个模板文件,用于使用访问代码进行导出: DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, _ TableName, ExcelPa
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, _
TableName, ExcelPath, True
好吧,我最终在代码中添加了这个来处理它。这大约需要6秒钟,但它是在一个每月一次的自动化,这是节省用户小时,所以我认为这是可以接受的
Dim wb As Excel.Workbook, WorkSheet As Excel.WorkSheet
Set wb = xlApp.Workbooks.Open(NewFileName)
Set WorkSheet = wb.Worksheets(1)
'begin workbook formatting
For Each cell In WorkSheet.Range("G2:H500")
If cell.Value <> "" Then
cell.Value = cell.Value * 1
End If
Next cell
检查空字符串时,空字符串保持不变,如果没有空字符串,它们将变为0表中的数据是否设置为数字?是的,但它有空项。这对我来说并不重要。当使用transferspreadsheet到新的excel文件而不是模板时,是否会在excel中返回相同的错误?您还可以尝试在excel中的数据上使用Trim函数,以消除任何尾随的null。我切换到Null而不是,然后它不工作空白数字和奇怪的符号是的,它确实产生了相同的错误,我认为单元格的fomatting被更改为匹配导出字段,我刚刚意识到是一个字符串,因为空字符串。