3

Я копирую, а затем немного вставляю значения в excel (когда использую Excel). Когда я использую LibreOffice, вы можете сделать то же самое (см. Связанный вопрос здесь), но это очень утомительно!

Это становится особенно утомительным, так как я иногда использую другие параметры в разделе «Специальная вставка». Так как это диалоговое окно вставки специальных значений запоминает ваши последние настройки, чтобы получить право на прошедшие специальные настройки, я должен посмотреть на его текущие настройки и поставить галочку и снять галочку, пока не получу то, что хочу. Поскольку я часто пропускаю только значения, я бы предпочел, чтобы у меня были запоминания набора клавиш, и я мог повторять каждый раз, когда хочу это сделать.

Как я могу получить набор нажатий клавиш, который будет последовательно вставлять только текст и цифры в libre office? Поскольку я хочу делать это быстро, я предпочитаю меньше нажатий клавиш, чем больше.

3 ответа3

5

(Я оставлю этот ответ здесь, потому что он более общий, чем использование встроенной команды, как предложено в моем другом ответе - с макросом вы можете использовать любую комбинацию параметров вставки, а не просто пару предопределенных операций.)

Вы можете определить макрос и связать его с комбинацией клавиш. Самый простой способ, вероятно, использовать макрос-рекордер:

  1. Убедитесь, что запись макроса включена: выберите « Инструменты» → « Параметры», затем выберите «LibreOffice» → «Общие» и установите флажок «Включить запись макроса».

  2. Подготовьтесь к записи макроса: Скопируйте ячейку в буфер обмена (параметры, предлагаемые для команды « Специальная вставка»… зависят от содержимого буфера обмена, поэтому вам нужно иметь что-то из LibreOffice Calc в буфере обмена, если вы хотите записать макрос для вставки данных, скопированных из Calc).

  3. Выберите пустую ячейку, в которую вы будете вставлять скопированные данные.

  4. Начать запись макроса: Выберите « Инструменты» → « Макросы» → « Запись макроса». Появится панель инструментов «Запись макроса» с кнопкой « Остановить запись».

  5. Выберите « Правка» → « Специальная вставка», затем выберите комбинацию параметров, которые вы хотите записать в макросе, и нажмите ОК.

  6. Нажмите кнопку « Остановить запись» ; появится диалог сохранения макроса. Введите новое имя макроса (например, PasteAsTextOrNumber), выберите « My Macros/Standard/Module1 в левом дереве, затем нажмите кнопку « Сохранить». (Если вы введете имя макроса, которое уже существует в модуле, вам нужно будет подтвердить, что вы хотите перезаписать старый макрос; нет способа добавить новое действие в существующий макрос, используя только рекордер макросов.)

  7. Теперь вы можете назначить макрос для сочетания клавиш. Выберите « Инструменты» → « Настройка», затем перейдите на вкладку «Клавиатура», выберите нужную комбинацию клавиш быстрого доступа в верхнем списке и найдите макрос в нижних списках:

    • Категория: LibreOffice Macros → пользователь → Стандарт → Module1
    • Функция: имя вашего макроса (например, PasteAsTextOrNumber)

    Нажмите Modify, чтобы назначить макрос комбинации клавиш.

    Вы также можете создать кнопку панели инструментов для макроса, используя вкладку «Панели инструментов».

Код макроса, сгенерированный для меня при проверке только параметров «Текст» и «Числа»:

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
5

После более внимательного изучения диалогового окна «Настройка» я нашел команды, которые, вероятно, выполняют то, что вы хотите, без использования макросов:

  1. Выберите ИнструментыНастройка, затем перейдите на вкладку «Клавиатура».

  2. Выберите нужную комбинацию клавиш в списке «Горячие клавиши».

  3. Выберите «Изменить» в списке «Категория», затем выберите .uno:PasteOnlyValue в списке «Функция». (Согласно этому отчету об ошибках, начиная с LibreOffice 4.0.0, этот элемент должен быть помечен как «Вставить только значение», возможно переведенный на ваш язык; я все еще использую 3.6 здесь.)

    Есть также несколько других связанных команд в категории «Редактировать»:

    • .uno:PasteOnly (только для вставки)
    • .uno:PasteOnlyFormula (формула только для вставки)
    • .uno:PasteOnlyText (Вставить только текст)
  4. Нажмите кнопку Modify, чтобы назначить функцию комбинации клавиш.

3

Я поигрался с меню «Специальная вставка», которое вызывается нажатием CTRL+SHIFT+v. Я заметил, что некоторые клавиши переключают опции. Я не могу найти документацию, хотя. Вот горячие клавиши для libra office calc Общие сочетания клавиш в LibreOffice Я также не могу найти что-либо через поиск по сайту.

Так что, думаю, я просто пойду и посмотрю, что они делают.

a = выбирает переключатель "Добавить".

б = н / д
c = Переключение выбора "ОК" и "Отмена".
d = переключает флажок "Дата и время".
e = выбирает переключатель "Нет".
f = переключает флажок "Формулы".
г = н / д
h = открывает меню справки.
i = выбирает переключатель "Не сдвигать".
J = N / A
k = устанавливает флажок "Пропускать пустые ячейки".
l = переключает флажок "Ссылка".
m = переключает флажок "Форматы".
n = переключает флажок "Числа".
o = Выбирает "Объекты", но не переключает?
p = устанавливает флажок "вставить все".
q = н / д
r = выбирает переключатель "Вправо".
s = Выбирает переключатель "Вычесть".
t = переключает флажок "Транспонировать".
U = N / A
v = выбирает переключатель "Разделить".
w = выбирает переключатель "Вниз".
x = Переключает флажок "Текст".
y = выбирает переключатель "Умножить".
z = N / A

Ничего с пунктуацией или цифрами. Shift+Letter, похоже, имеют тот же эффект, что и строчная буква.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .