Как красиво распечатать код VBA?

Как скопировать код VBA в документ Word и сохранить цветовую схему редактора VBA?


person mraviator    schedule 05.04.2010    source источник
comment
Это должно быть в Word? Вам просто нужно распечатать его с подсветкой синтаксиса цветом?   -  person John M    schedule 06.04.2010
comment
Это было бы неплохой пастой... или довольно большой нагрузкой? Обратите внимание, как красивое начертание сбивает некоторых с толку, говоря вам, как отправить цветной код на принтер!   -  person Jean-François Corbett    schedule 30.06.2011
comment
Если бы один из ответов помог вам, вы бы выбрали его в качестве ответа?   -  person JimmyPena    schedule 18.11.2011
comment
@Jean-FrançoisCorbett prettyprint — довольно устоявшийся синоним «улучшителя кода». Я совсем не смутился.   -  person Henrik Erlandsson    schedule 13.06.2012


Ответы (7)


Вы можете использовать Notepad++, чтобы сделать это тремя способами. Просто чтобы вы знали, Notepad++ — это более продвинутая версия Notepad, которая поддерживает подсветку синтаксиса различных файлов кода «из коробки» — включая Visual Basic!

Загрузите и установите его, запустите и загрузите свой код VBA. Вы должны автоматически увидеть его красиво окрашенным (если нет, потому что расширение файла отличается от .vb, перейдите в Language -> VB или Language -> V -> VB).

Если вам нужно изменить какой-либо из цветов, вы можете легко это сделать — просто перейдите в «Настройки» -> «Конфигуратор стайлера». В этом меню вы можете изменить различные параметры выделения и шрифта в соответствии с вашими потребностями, хотя для большинства обычно достаточно значения по умолчанию.

Затем перейдите в Плагины -> NppExport. Оттуда у вас есть три варианта, которые вы можете рассмотреть:

  • Прямая печать из Notepad++
  • Скопировать все форматы в буфер обмена
  • Экспорт в RTF
  • Экспорт в HTML

Первый говорит сам за себя. Второй — «Копировать все форматы в буфер обмена» — скопирует весь файл с выделенным синтаксисом в буфер обмена. Как только вы щелкнете по нему, откройте Microsoft Word или другой любимый редактор документов и просто нажмите «Вставить»! Вы должны увидеть красиво выделенный синтаксис код. Если что-то пойдет не так, то можно попробовать один из других вариантов (экспорт в RTF/HTML), хотя у меня никогда не было проблем с методом буфера обмена.

person Breakthrough    schedule 30.06.2011
comment
Пока единственный правильный ответ! +1 Все остальные: ОП спрашивает, как поместить код в [Microsoft] Word. - person Jean-François Corbett; 30.06.2011
comment
Это не работает в октябре 2019 года, теперь экспортируется только черный текст. - person tomdemuyt; 03.10.2019

На cnet можно скачать две программы, которые можно попробовать бесплатно. Если вы не пробовали их, вот ссылки:

person Mehper C. Palavuzlar    schedule 05.04.2010
comment
Я использую O365. у вас есть опыт работы с одним из этих форматировщиков VBA? - person Timo; 09.05.2021

Возможно, вам нужен Smart Indenter? Вы бы загрузили результат в Notepad ++, установили язык VB и сохранили как .rtf/.doc (или распечатали в файл, не могу вспомнить).

person Henrik Erlandsson    schedule 13.06.2012

Для более современного подхода пользователи Sublime Text могут установить ExportHTML из Package Control. Это имеет дополнительное преимущество, заключающееся в возможности включения номеров строк и изменения цвета кода.

Файлы HTML можно открывать непосредственно в Word.

person John Wynne    schedule 28.02.2018

Highlight поддерживает широкий спектр операционных систем и более 150 языков, включая Visual Basic, хотя я не уверен про ВБА.

person richj    schedule 05.04.2010

Я бы порекомендовал этот: planetB

Он хорошо работает с Internet Explorer (у меня не работал с Firefox, не уверен, что с Chrome).

Кроме того, он подключен к сети, поэтому ничего устанавливать не нужно (на примере корпоративного/университетского ПК)

Regards
Wheeliam
person Wheeliam    schedule 03.09.2018

Следующее работает с Visual Studio Code:

  1. Запустите код VS.
  2. Новый файл.
  3. Скопируйте и вставьте код VBA в окно VS Code.
  4. В правом нижнем углу нажмите «Обычный текст» и вместо этого выберите «Visual Basic». Обратите внимание, что код теперь выделен синтаксисом.
  5. Скопируйте и вставьте отформатированный код в Word.
person Heinzi    schedule 28.08.2019