Jos*_*on 4 excel vba excel-vba
我编写了一个宏来将一个工作表中的几个单元格值复制并粘贴到另一个工作表中.除了包含日期值的字段外,所有字段都已成功.
例如,当单元格包含'08 -Jan-14'时,粘贴的值是整数'41647'.
如何确保新工作表收到的粘贴值采用日期格式?
Sub place_data(Source As Worksheet, Destination As Worksheet, Optional WorkbookName As String,
Optional rowToWrite As Integer)
Dim iSourceHeader As Integer
Dim iCol As Integer
Dim lSourceEnd As Long
Dim lDestEnd As Long
Dim rSource As Range
Dim rDestination As Range
Dim rngFrom As Excel.Range
Dim rngTo As Excel.Range
Set rngFrom = Workbooks(WorkbookName).Sheets(Source.Name).Range("D51")
Set rngTo = ThisWorkbook.Sheets("Self Test Summary").Range("A" & rowToWrite)
rngFrom.Copy
rngTo.PasteSpecial Paste:=xlValues
Run Code Online (Sandbox Code Playgroud)
你只是粘贴价值而不是格式.粘贴后需要再添加一行
rngFrom.Copy
rngTo.PasteSpecial Paste:=xlValues
rngTo.Numberformat = "DD-MMM-YY"
Run Code Online (Sandbox Code Playgroud)
其他方式
rngTo.Value = rngFrom.Value
rngTo.Numberformat = "DD-MMM-YY"
Run Code Online (Sandbox Code Playgroud)