gpt4 book ai didi

excel - VBA 以编程方式修复 "errored"单元格?

转载 作者:行者123 更新时间:2023-12-04 20:16:35 25 4
gpt4 key购买 nike

我在约会方面遇到了一些麻烦。我已经阅读了很多关于它的内容,而且日期格式很奇怪似乎很常见。

我的情况是,当我将 xlsx 文件或 csv 文件中的数据带入我自己的工作簿(通过 vba 加载宏)时,日期被格式化为文本。加载宏只是打开所需的文件,将所有行复制并粘贴到当前书籍中,然后关闭该文件。

我检查了我的源文件,所有日期的格式都正确 - dd/mm/yyyy 并在源 xlsx 和 csv 文件中正确显示。当我输入数据时,日期变成了文本格式,你看到的只是:40246真的是:09/03/2010 .

我检查了我的文件,它们都存储为日期。我尝试格式化为数字、文本、特殊、所有变体,然后改回日期,但没有任何 react 。

列中的每个单元格(只有 1 列)都有绿色错误指示符,并且信息显示“此单元格格式为文本或前面带有撇号”,但两者都不是。我确保我的 excel 或源代码中没有撇号。但是,如果我在该错误上单击“转换为数字”,然后将格式更改回最新,它会修复。

我想在代码中执行此操作,获取整个列,转换为数字,然后更改为日期。但我似乎无法弄清楚如何做到这一点。

我试过改变格式,比如:ActiveCell.numberformat = "0.00" (我只是尝试使用 1 个单元格进行练习)但这并没有清除错误,当我将其更改回日期时,什么也没发生。我尝试录制我在错误框中单击“转换为数字”的宏,但代码中没有任何内容。是否有用于修复错误单元格的 vba 命令?我知道有一个 iserror (或类似的东西)函数来判断单元格是否有错误,但我不知道使用什么命令来实际修复错误。

有什么建议么?

如果我突出显示整个列,然后单击错误中的“转换为数字”,它会转换整个列,此时我可以转换为修复它的日期,这就是我想要宏做的事情。我不想每次用户遇到这个问题时都跑过去修复它(我不相信我可以让他们自己做,whixch 真的是最简单的)

enter image description here

请注意绿色的小指示器,上面写着“转换为数字”,我可以这样做,然后将格式更改为日期,但是当我单击转换为数字时,录制的宏中没有代码,这很奇怪。

编辑

加载代码:

openfnameandpath = Application.GetOpenFilename(Title:="Select File To Be Opened") 'get file path
dim openfnameandpath as string
dim loadworkbook as workbook
dim numrows as long, numcols as long

openfnameandpath = Application.GetOpenFilename(Title:="Select File To Be Opened") 'get file path

Set loadWorkbook = Workbooks.Open(openfnameandpath)

loadWorkbook.Sheets(1).Activate 'in case a different sheet was active
numrows = Cells.find("*", [A1], , , xlByRows, xlPrevious).Row
numcols = Cells.find("*", [A1], , , xlByColumns, xlPrevious).Column

loadWorkbook.Sheets(1).Range("A1", Cells(numRows, numCols)).Copy Sheets(1).Cells(1, 1) =

loadWorkbook.Close False

我把它减少到那个程度,问题仍然存在。

最佳答案

选择您的单元格并运行:

Sub DateFixer()
Dim r As Range, d As Date, v As String
For Each r In Selection
v = r.Text
d = CDate(CLng(v))
r.Clear
r.NumberFormat = "dd/mm/yyyy"
r.Value = d
Next r
End Sub

关于excel - VBA 以编程方式修复 "errored"单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22689974/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com