Answers:
我认为没有,但是好消息是您可以通过创建宏来创建一个宏。
记录宏,按照所需方式粘贴,然后将其分配给键盘快捷键,或将以下内容放入新的宏中(假设您要粘贴而不格式化):
对于MS Word 2010:
Selection.PasteAndFormat (wdFormatPlainText)
对于MS Excel 2010:
ActiveSheet.PasteSpecial Format:="Unicode Text", Link:=False, _
DisplayAsIcon:=False, NoHTMLFormatting:=True
同样,一旦保存了宏,就需要将其分配给键盘快捷键(例如ctrl + m)。
补充: MS Word 2002:
Sub PastePlaintext()
Selection.PasteSpecial Link:=False, DataType:=wdPasteText
End Sub
我刚刚发现,在Word 2013和Excel 2013中,有一种快速方法可以通过键盘访问所有“ 选择性粘贴 ”选项。在以下示例中,仅显示了如何粘贴为文本(不粘贴格式)。
复制完某些内容后,转到要粘贴的位置(不粘贴格式)。 CTRL+ V(也将暂时粘贴格式),然后CTRL(推并释放控制键)然后T(最后一个T表示“仅保留文本”)。
复制完某些内容后,转到要粘贴的位置(不粘贴格式)。 CTRL+ V(也将暂时粘贴格式),然后CTRL(推并释放控制键)然后V(最后一个V表示“粘贴值”)。
在键入最后一个字母之前释放第二个 CTRL键很重要。
此方法只需要敲击4个键盘,就不需要宏,也不需要在对话框窗口中使用鼠标。
如果要将“仅保留文本”设置为默认值,则可以执行以下操作:
默认粘贴:
点击顶部的下拉菜单,然后选择“更多命令”:
点击高级:
更改默认值(仅保留文本):
重复相同的粘贴操作默认为仅文本:
希望这可以帮助!
该功能已经存在,只是没有开箱即用的快捷方式,但是您可以给它一个。
在Word 2007-2013中(可能更早了,不记得了),您可以将所选的键盘快捷键绑定到命令。在Word 2013中
如果正在使用按键组合,则在“当前按键”框下面,它会告诉您“当前分配给:xyz”,其中xyz是已使用此快捷方式的命令。然后,您可以决定是否要保留自己的第一选择(快捷方式现在将调用PasteTextOnly,而不再调用xyz)或尝试提出另一个按键组合。
在Word 2007-2013中,您必须按ALT + CTRL + G,然后按T并单击Enter键
要在Excel中同时粘贴对象和文本以及撤消选项,请使用
' Custom data type for undoing
Type SaveRange
Val As Variant
Addr As String
End Type
' Stores info about current selection
Public OldWorkbook As Workbook
Public OldSheet As Worksheet
Public OldSelection() As SaveRange
'----------------------------------------------------------
Sub PasteValues()
' Set shortcut to Cntl+Shift+V, for example
' Works for Outlook and Chrome AND Excel
' Abort if a range isn't selected
If TypeName(Selection) <> "Range" Then Exit Sub
' The next block of statements
' save the current values for undoing
ReDim OldSelection(Selection.Count)
Set OldWorkbook = ActiveWorkbook
Set OldSheet = ActiveSheet
i = 0
For Each cell In Selection
i = i + 1
OldSelection(i).Addr = cell.Address
OldSelection(i).Val = cell.Formula
Next cell
' Start paste function
On Error GoTo ValuesFail
' Works for Excel and Outlook, but not Chrome
Selection.PasteSpecial Paste:=xlValues
' Specify the Undo Sub
Application.OnUndo "Undo the macro", "UndoMacro"
Exit Sub
ValuesFail:
On Error GoTo TextFail
' Works for Outlook and Chrome, but not Excel
ActiveSheet.PasteSpecial Format:="Text"
' Specify the Undo Sub
Application.OnUndo "Undo the macro", "UndoMacro"
Exit Sub
TextFail:
On Error GoTo PasteFail
ActiveSheet.Paste
' Specify the Undo Sub
Application.OnUndo "Undo the macro", "UndoMacro"
Exit Sub
PasteFail:
MsgBox "Complete Failure"
End Sub
'----------------------------------------------------------
Sub UndoMacro()
' Reinstates data in the selected range
' Tell user if a problem occurs
On Error GoTo Problem
Application.ScreenUpdating = False
' Make sure the correct workbook and sheet are active
OldWorkbook.Activate
OldSheet.Activate
' Restore the saved information
For i = 1 To UBound(OldSelection)
Range(OldSelection(i).Addr).Formula = OldSelection(i).Val
Next i
Exit Sub
' Error handler
Problem:
MsgBox "Can't undo macro"
End Sub
'----------------------------------------------------------
Sub RevertFile()
' From http://www.excelforum.com/showthread.php?t=491103
wkname = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name
ActiveWorkbook.Close Savechanges:=False
Workbooks.Open Filename:=wkname
End Sub