将Excel中的date粘贴复制到不同格式的Word中

我有一个macros从Excel复制某些数据,并将其粘贴到Word,但是我正在寻找一种方法来修改粘贴前的date格式。

这目前复制Excel中显示的date,即16/01/2015

Sub NoFormatPaste() wdFind.Replacement.Text = "" wdFind.Forward = True wdFind.Wrap = wdFindContinue wdFind.Execute appWd.Selection.PasteSpecial DataType:=wdPasteText CutCopyMode = False End Sub Cells(Application.ActiveCell.Row, 14).Select Selection.Copy wdFind.Text = "DATE" Call NoFormatPaste 

不过,我想以不同的格式粘贴它。 这样的东西,但它不工作。 即2015年1月16日星期五

 Sub NoFormatDatePaste() wdFind.Replacement.Text = "" wdFind.Forward = True wdFind.Wrap = wdFindContinue wdFind.Execute appWd.Selection = Format(date_example, "dddd d mmmm yyyy") CutCopyMode = False End Sub wdFind.Text = "DATE" Call NoFormatDatePaste 

如果需要,我可以粘贴整个代码,这些只是不工作的位。

看来你不能告诉Word要打印什么值,而这些值实际上需要复制和粘贴。

将date值存储在一个string中,并将其传递给其他过程:

 Dim dateValue as String dateValue = Cells(Application.ActiveCell.Row, 14).Value wdFind.Text = "DATE" Call NoFormatPaste(dateValue) 

在其他过程中,不要使用.Paste方法,而只需插入string。

 Sub NoFormatDatePaste(dateValue as String) wdFind.Replacement.Text = "" wdFind.Forward = True wdFind.Wrap = wdFindContinue wdFind.Execute appWd.Selection.InsertAfter Format(dateValue, "dddd d mmmm yyyy") End Sub