【发布时间】:2021-12-29 02:45:42
【问题描述】:
我有一些从网站下载的数据,其中一列包含回历日期。为了使该列成为正确的日期列,我应用了以下格式:
但是除非我输入单元格(通过双击或 F2)然后按 Enter 键,否则它不会被视为日期并与右侧对齐的问题
因为行数大我用的方式不实用
我尝试了以下方法:
- 将单元格复制到记事本,然后再次粘贴到 excel 中,但不起作用
- 将日期分隔符从“-”替换为“.”然后将日期分隔符替换回“-”,就好像日期分隔符是“。”并替换为通常适用于公历日期的“-”,将其从文本转换为日期
- 创建了一个 VBA 代码,应用所选单元格的代码进入和退出单元格以刷新,请检查以下内容:
Sub HijriDateEnforce() Dim cel As Range Dim selectedRange As Range Set selectedRange = Application.Selection For Each cel In selectedRange.Cells Selection.NumberFormat = "[$-1970000]B2dd/mm/yyyy;@" SendKeys "{F2}~" Next cel End Sub
但是如果行数非常大,代码会因为未知原因停止一段时间,我必须为剩余的单元格再次运行它
【问题讨论】:
-
你能分享一下你们约会的样子吗?之前和之后?
-
这是一个日期格式的列,作为文本与单元格的左侧对齐,输入单元格然后按 Enter 后,它将与日期对齐,希望我的解释清楚跨度>
-
如果您指的是单元格中的日期,它们就像:01-01-1444