繁体   English   中英

在VBA中转换为文本时保持日期格式

Keeping a date format when converting to text in VBA

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在努力处理Excel / VBA中的日期

我有一个带有日期列的电子表格,按预期以英国格式显示。

然后,我要处理电子表格并将其另存为文本文件,以便将数据加载到另一个系统中。

我的问题出在我将文件保存为两件事情时,首先是由于美国对Excel的偏见,它试图“翻转”日期,因此例如2012年7月1日从2012年7月1日到2012年7月1日

其次,当我保存文件并重新打开文本文件时,似乎已经删除了零,所以我的日期现在不仅以错误的方式读取,而且没有零,因此显示7/1/2012

我要导入的系统非常明确地接受日期格式。

我尝试了各种

ActiveCell.FormulaR1C1 = "=TEXT(RC[-1],""dd/mm/yyyy"")"

Cells(x, 3).Value = Left(CStr(Cells(x, 3).Value), 2) + "/" + Mid(CStr(Cells(x, 3).Value), 4, 2) + "/" + Right(CStr(Cells(x, 3).Value), 4)

在Excel中,这两种方法都能保持所需的格式,这是在我将文件另存为文本时遇到的问题。

我几乎想用零填充日期,并强制将其另存为文字字符串,但我的想法已经用完了。

我敢肯定这是一个简单的解决方法,但是我需要其他人来解决这个问题,因此我们将不胜感激

1 个回复

保存到.csr文件以导入到Access时,我遇到了同样的问题。 答案是将Local:=True添加到SaveAs语句。 这会将日期保留为英国格式。

下面是我使用的代码:

' save data to csv file
ChDir "C:\Documents and Settings\Doug\My Documents\Fitness\LogCard Data"
ActiveWorkbook.SaveAs Filename:= _
 "C:\Documents and Settings\Doug\My Documents\Fitness\LogCard Data\LogCard_access.csv" _
    , FileFormat:=xlCSV, CreateBackup:=False, Local:=True
1 在VBA中将日期转换为文本

我有一个数据集,其中包含诸如“ 2016年3月”之类的文本值。 现在,我编写了以下代码以将其复制到报告表中: 它具有正确的格式,但是当我单击该单元格时,该值显示为“ 3/1/2016”,而不是“ 2016年3月”。 关于如何将基础价值更改为“ 2016年3月”的任何想法 ...

2 将文本转换为日期格式 SSIS

我正在使用 SSIS 将数据从 Excel 导入 SQL Server 数据库。 日期列具有nvarchar数据类型,我想将其更改为日期数据类型YYYY-MM-DD 。 如果该值为空,那么我想获得空值。 我在 OLE DB 目标上的创建新表选项中使用了[mycolumn]日期。 那正确吗? ...

3 VBA 将日期文本更改为日期格式

我有一个导出的 excel,日期格式为24.12.2019 ,我如何使用 VBA 并设置一个宏,以便当我点击宏时它变成2019-12-24 。 我试图在 stackoverflow 中找到相关帖子,但无济于事。 两者都是通用文本格式,我想保持这种方式。 ...

2019-11-01 07:08:04 3 309   excel/ vba
4 当操作系统区域设置为英国时,Excel vba将日期转换为其他格式

在Excel VBA中,我将硬编码日期分配给命名范围,如下所示: 这是通过单击按钮触发的。 现在,我拥有英国的系统文化。 当我单击按钮时,单元格上填充的值是“ 12/11/2018”。 如果我将文化更改为美国,那么它将填充为“ 11/12/2018”。 由于我的应用程序已在美 ...

5 从网站解析文本时保持格式

我想从整个网站解析文本,所有文本都出现在文本文件中,例如原始文本。 我想将其格式化为原样。 我正在使用HTML Agility Pack解析文本,我尝试了可以​​在Internet上找到的任何解决方案,但没有任何帮助。 这是我的代码。 似乎“替换”无效,或者我错过了一些有关它的 ...

7 将日期从文本格式转换为数字格式

我正在尝试从文本格式转换日期,例如 2020 年 4 月 10 日 2020 年 3 月 11 日 我试过使用 =DateValue 公式,但它返回一个错误,想象那是因为没有写出整月,可能是因为它的格式不正确 谁能帮忙:) ...

2020-06-23 14:11:05 3 45   excel
8 MS Access - 转换短文本的日期格式

我有一个带有表Door Activity Log的.mdb Access数据库。 在其中,有一个名为Door Activity Log Date的列,类型为Short Text 。 目前,其格式为美国日期格式(mm / dd / yyyy)。 我如何在Access中转换/操纵日期(我猜 ...

10 在Excel VBA中将大量值转换为英国日期格式

我有一张包含以下格式的数万个日期的表格: - 31.01.2018 (所以,dd.mm.yyyy) 每种细胞格式都是通用的。 我需要将每个转换为英国日期格式。 为此,我正在使用: - 这需要一段时间,我想知道是否有更有效的方式来转换日期? ...

2019-05-08 09:25:38 2 42   excel/ vba
暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM