我经常在 Excel 中复制并粘贴值(当我使用 Excel 时)。当我使用 LibreOffice 时,您可以做同样的事情(请参阅相关问题在这里) 但它实在是太乏味了!
当我偶尔使用选择性粘贴下的其他选项时,它变得特别乏味。由于此选择性粘贴值对话框会记住您的上一次设置,因此为了获得正确的选择性粘贴,我必须查看其当前设置并选中和取消选中,直到获得我想要的。由于我经常只使用值,所以我更希望有一组我的手指可以记住的按键,并且每次我想这样做时我都可以重复这些按键。
我如何才能获得一组能够在自由办公室中一致粘贴文本和数字的击键?因为我希望能够快速地完成此操作,所以我更喜欢少击键。
答案1
(我将把这个答案保留在这里,因为它比使用内置命令更为通用,如我的其他答案 — 使用宏,您可以使用任意粘贴选项组合,而不仅仅是几个预定义的操作。)
你可以定义一个宏并将其绑定到组合键上。最简单的方法可能是使用宏录制器:
确保宏录制已打开:选择工具 →选项,选择 LibreOffice → 常规页面,然后勾选“启用宏录制”选项。
准备录制宏:将单元格复制到剪贴板(为特殊粘贴…命令依赖于剪贴板内容,因此如果您想录制一个宏来粘贴从 Calc 复制的数据,则需要在剪贴板中有一些来自 LibreOffice Calc 的内容)。
选择一个空单元格,将复制的数据粘贴到其中。
开始宏录制:选择工具 →宏 →录制宏。带有停止录制按钮将会出现。
选择编辑 →特殊粘贴…,然后选择要在宏中录制的选项组合并按好的。
点击停止录制按钮;将出现保存宏的对话框。输入新宏名称(例如
PasteAsTextOrNumber
),My Macros/Standard/Module1
在左侧树中选择,然后按节省按钮。(如果您输入模块中已经存在的宏名称,则需要确认是否要覆盖旧宏;无法仅使用宏录制器将新操作附加到现有宏。)现在您可以将宏分配给快捷键。选择工具 →定制,然后切换到“键盘”选项卡,在顶部列表中选择所需的快捷键组合,然后在底部列表中找到宏:
- 类别:LibreOffice 宏 → 用户 → 标准 → Module1
- 功能:您的宏名称(例如
PasteAsTextOrNumber
)
按调整将宏分配给组合键。
您还可以使用“工具栏”选项卡为宏创建工具栏按钮。
当仅选中“文本”和“数字”选项时,为我生成的宏代码是:
sub PasteAsTextOrNumber
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(5) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Flags"
args1(0).Value = "SV"
args1(1).Name = "FormulaCommand"
args1(1).Value = 0
args1(2).Name = "SkipEmptyCells"
args1(2).Value = false
args1(3).Name = "Transpose"
args1(3).Value = false
args1(4).Name = "AsLink"
args1(4).Value = false
args1(5).Name = "MoveMode"
args1(5).Value = 4
dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args1())
end sub
答案2
仔细查看了“自定义”对话框后,我发现一些命令可能无需使用宏就可以完成您想要的操作:
选择工具 →定制,然后切换到“键盘”选项卡。
在“快捷键”列表中选择所需的组合键。
在“类别”列表中选择“编辑”,然后
.uno:PasteOnlyValue
在“功能”列表中选择。(根据此错误报告,自 LibreOffice 4.0.0 起,此项应标记为“仅粘贴值”,可能翻译成您的语言;我在这里仍使用 3.6。)“编辑”类别中还有其他几个相关命令:
.uno:PasteOnly
(仅粘贴).uno:PasteOnlyFormula
(仅粘贴公式).uno:PasteOnlyText
(仅粘贴文本)
按调整按钮将功能分配给组合键。
答案3
我一直在尝试按Ctrl+ Shift+调出的“选择性粘贴”菜单B。我注意到有些键可以切换选项。但我似乎找不到任何文档。以下是 Libre office calc 的热键文档LibreOffice 中的常规快捷键我通过搜索网站也没有找到任何东西。
所以我想我只是去看看他们会做什么。
- a = 选择“添加”单选按钮。
- b=不适用
- c = 切换“确定”和“取消”的选择。
- d = 切换“日期和时间”复选框。
- e = 选择“无”单选按钮。
- f = 切换“公式”复选框。
- g=不适用
- h = 打开帮助菜单。
- i = 选择“不动摇”单选按钮。
- j = 不适用
- k = 切换“跳过空单元格”复选框。
- l = 切换“链接”复选框。
- m = 切换“格式”复选框。
- n = 切换“数字”复选框。
- o = 选择“对象”但不切换?
- p = 切换“全部粘贴”复选框。
- q=不适用。
- r = 选择“右”单选按钮。
- s = 选择“减去”单选按钮。
- t = 切换“转置”复选框。
- u = 不适用
- v = 选择“划分”单选按钮。
- w = 选择“向下”单选按钮。
- x = 切换“文本”复选框。
- y = 选择“乘法”单选按钮。
- z=不适用
没有标点符号或数字。Shift+ 字母似乎与小写字母具有相同的效果。