以适当的格式打印date
我有一个很多date的Excel工作簿。
- 在工作表上它们的格式是“mm / dd / yy hh:mm”
- 我在表格上方的白框中看到的格式是“dd / mm / yy hh:mm”
我需要将工作表打印到文本文件中,但是当我这样做时,打印格式为dd/mm/yy hh:mm
,而不是mm/dd/yy hh:mm
。
代码如下:
For i = 1 To LastRow For j = 1 To LastCol If j = LastCol Then DataLine = DataLine + Trim(Cells(i, j).Value) Else DataLine = DataLine + Trim(Cells(i, j).Value) + vbTab End If Next j If (DataLine <> "") Then Print #FileNum, DataLine DataLine = "" End If Next i
有没有人有一个想法如何打印我需要的格式的床单?
您可以使用Format
function来自定义date的文本格式。
我逃过正斜杠/
因为否则它被解释为date分隔符和“在格式化输出中用作date分隔符的实际字符取决于您的系统设置”(从文档)。 随着逃跑,它应该总是输出一个/
字符。
Format(Cells(1, 1).Value, "MM\/dd\/yy hh:mm")
你可以使用Format(Cells(i,j), "mm/dd/yy hh:mm")
来做到这一点
或者可以使用更好的方法
Cells(i,j) = Application.WorksheetFunction.Text(Now(), "dd/mm/yy hh:mm")
这将返回一个文本variables而不是date时间。