Excel 将值从一个工作簿复制并粘贴到另一个工作簿后,公式不会';在双击单元格之前,我无法使用特定范围

Excel 将值从一个工作簿复制并粘贴到另一个工作簿后,公式不会';在双击单元格之前,我无法使用特定范围,excel,vba,text-to-column,Excel,Vba,Text To Column,使用VBA打开一个工作簿,复制数据并将其粘贴到另一个工作簿。在第二个工作簿中,我为特定范围的自定义值格式(dd/mm/yyyy hh:mm)设置了一个公式,但该公式不起作用。值作为自定义格式的文本保留在单元格的左侧,直到我双击为止。两个工作簿(工作表)的格式相同,我想保留它 我一直在尝试使用以下方法修复它: range.TextToColumns Destination:=range DataType:=xlFixedWidth FieldInfo:=Array(Array(0,9),Array

使用VBA打开一个工作簿,复制数据并将其粘贴到另一个工作簿。在第二个工作簿中,我为特定范围的自定义值格式(dd/mm/yyyy hh:mm)设置了一个公式,但该公式不起作用。值作为自定义格式的文本保留在单元格的左侧,直到我双击为止。两个工作簿(工作表)的格式相同,我想保留它

我一直在尝试使用以下方法修复它:

range.TextToColumns Destination:=range DataType:=xlFixedWidth FieldInfo:=Array(Array(0,9),Array(1,1), Array(16,9))
它可以在中途工作。日期适合单元格的右侧,但我的自定义日期后的日期少17天???:D当我省略数组(0,9)时,它返回附加日期02/01/1990,我的原始日期移动到下一列

有人有什么解决办法吗?
.TextToColumns是如何工作的?如何正确声明FieldInfo的arg以接收原始日期并将其放入单元格右侧?

下面是如何将文本格式(单元格B1)的日期转换为实际日期的示例。请注意,文本格式是左对齐的,日期格式是右对齐的

请记住,日期是一个数字->整数部分是日期,小数部分是时间


我们可以看到您想要解析的内容的图像吗,即您想要拆分为列的文本?2019年10月27日12:01、2019年10月27日12:02等等,最终结果应该是什么?因为textToColumns用于将文本值(即单个单元格/列)拆分为多个列。这就是您想要实现的吗?如何定义“范围”变量(命名错误)?我没有定义它,因为我没有使用“range”作为变量:它在这里节省了一个空间。图像:在.TextToColumns之后是左栏,在任何更改之前是右栏。我只想我的公式在复制粘贴后生效。
Public Sub sTestDate()

  Dim v As Variant

  v = Sheet1.Range("B1").Value
  Sheet1.Range("B2").Value = CDbl(CDate(v))
  Sheet1.Range("B3").Value = CDbl(CDate(v))
  Sheet1.Range("B3").NumberFormat = "dd/mm/yyyy hh:mm"

End Sub