Форум программистов, компьютерный форум, киберфорум
MS Office Word
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 27.04.2015
Сообщений: 18
1

Вычисления в Word

01.12.2016, 23:07. Показов 1732. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Мне иногда приходится делать в Word простые вычисления. Хочется немного упростить этот процесс.
Для этого вынес на панель команду "Вычислить значение" из меню "Сервис" (исподьзую Word 2003).
Все работает. Набираю формулу, выделяю ее, нажимаю кнопочку - в буфере результат.
Набираю знак =, вставляю результат. Красиво, но долго.
Пытаюсь сделать это с помощью макроса. Записал макрос со всеми вышеперечисленными действиями.
Visual Basic
1
2
3
4
5
6
Sub Макрос()
    Selection.Calculate
    Selection.MoveRight Unit:=wdCharacter, Count:=1
    Selection.TypeText Text:="="
    Selection.PasteAndFormat (wdPasteDefault)
End Sub
Не работает. Просто вставляет из буфера последнее значение. Почему? Возможно ли исправить?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.12.2016, 23:07
Ответы с готовыми решениями:

Вычисления в таблицах Word 2013
В журнале успеваемости имеется строка с оценками, н-ками и незаполненными ячейками: |5|н |4| ...

Конвертирование PDF в Word. Word документ получился с режимом ограниченной функциональности
Добрый день! Конвертировал я PDF документ в Word документ через Adobe Acrobate pro DC. Получился...

Нарушение форматирования документов word 2010 при открытии в word 2013
Здравия коллеги! Столкнулся с такой проблемой у человека W8+office2013 всё легальное, документы...

MS Word 2003: как открыть файлы более новых версий Word?
У меня стоит мс офис ворд 2003 года и то, что написано на намного более новых, просто не читает -...

3
8940 / 4852 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
02.12.2016, 10:15 2
Лучший ответ Сообщение было отмечено a_krut как решение

Решение

Visual Basic
1
2
3
4
5
6
Sub Calc()
    Dim result!
    result = Selection.Calculate
    Selection.MoveRight Unit:=wdCharacter, Count:=1
    Selection.TypeText Text:="=" & result
End Sub
2
0 / 0 / 0
Регистрация: 27.04.2015
Сообщений: 18
02.12.2016, 11:32  [ТС] 3
Спасибо, все работает. Понятно, буфер обмена не используется.
Если можно, ответьте на 2 вопроса.
1) Что значит ! в описании переменной?
2) Таким ухищрением обходится ошибка майкрософтовцев? Я где-то находил, что в более старых версиях (типа 97-го ворда) работало и так, как я написал?
0
8940 / 4852 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
02.12.2016, 12:36 4
Цитата Сообщение от a_krut Посмотреть сообщение
1) Что значит ! в описании переменной?
Сокращённое обозначение типа переменной. Полностью запись выглядит так:
Visual Basic
1
Dim result As Single
Цитата Сообщение от a_krut Посмотреть сообщение
Таким ухищрением обходится ошибка майкрософтовцев?
Никакой ошибки. Когда работа выполняется из макроса, то использовать буфер обмена нужно очень аккуратно.
1
02.12.2016, 12:36
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.12.2016, 12:36
Помогаю со студенческими работами здесь

Макрос Word 2016 замена шрифта рандомных символов на выбранный - MS Word
Есть обычный текст, только буквы и цифры Нужно, чтобы после обработки макроса выбирались случайные...

Не открывется вся книга в 2007 Word..созданная в word 2003.
Добрый вечер уважаемые товарищи! На работе случилась ситуация следующего характера.. Документ...

MS Word не создается маркер при переносе строки в переменной MS Word
Создаем переменную var1 с помощью макроса: Sub proc1() ActiveDocument.Variables.Add "var1",...

Как установить запуск Word 2010 вместо Word 2007?
Недавно установил Office 2010, но оставил 2007 (в новом варианте нет PowerPoint и Access). ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru