vba - Excel VBA - 输入单元格时存储的值会更改格式

标签 vba excel

我有一个表,需要根据客户端作业 ID 填充每个客户端作业的一些信息,然后使用 VBA 中的 vlookup 提取信息。

Dim jobID as double, path as String, creationDate as date
For i = 2 to 100
    jobID = Sheet11.Cells(i, 1).Value
    path = Application.WorksheetFunction.VLookup(jobID, Sheet9.Range("A:G"), 7, False)
    creationDate = Application.WorksheetFunction.VLookup(jobID, Sheet9.Range("A:M"), 13, False)
    Sheet11.Cells(i, 6).Value = creationDate
    Sheet11.Cells(i, 8).Value = path
Next i

工作表 9 中的路径类似于“180,28,60,91,40,178”或“179,143,141,142,178”,并且具有“常规”格式。表 9 中的创建日期类似于“2015-11-12 11:44”,并且具有 yyyy-mm-dd h:mm 自定义日期格式。然而,当存储的值如图所示输入到sheet11中时,一些路径被转换为数字,例如“179,143,141,142,178”变成了“179143141142178”,尽管有些保留为我想要的字符串,例如“180,28,60,91,40,178”。大多数日期还丢失了时间信息(h:mm 信息),并以 yyyy-mm-dd 格式输入到 Sheet11 中,而某些日期则保留了原始格式。

有人可以帮我维护从日期开始的所有信息并防止存储为字符串的路径变成数字吗?

最佳答案

如果您不想设置单元格格式,那么这是最简单的方法

Sheet11.Cells(i, 8).Value = "'" & path

关于vba - Excel VBA - 输入单元格时存储的值会更改格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39652559/

相关文章:

vba - 列出两个日期之间的天数

excel - 取一个引用单元格,搜索第二张纸,用相同的标识符替换数据

excel - 用于从其他应用程序切换到 Excel 的事件处理程序?

vba - 如何停止在Application.Quit方法后仍然运行的Excel宏

excel - 如何使用 VBA 修改 JPG 文件中的元数据

vba - 为什么我无法从该集合的成员获取属性?

vba - excel vba项目未关闭

excel - 如何循环遍历一个表列来过滤另一个表并通过电子邮件发送每个过滤后的表?

vba - 使用其他工作簿宏 : Tools - References in VBA

excel - 有没有办法破解 Excel VBA 项目的密码?