Setup

Download

Download the latest version from the GitHub release page. You can also download the latest development version using https://github.com/macros4outlook/quotefixmacro/archive/refs/heads/main.zip.

Import macros

  1. Extract the downloaded zip-file
  2. Open Outlook’s VBA editor (Alt+F11 or “Tools > Macro > Visual Basic-Editor”)
  3. File > Import File … > Select QuoteFixMacro.bas > Open
    If you don’t want to get a security warning when you use the macros, go to “Tools > Macro > Security” and disable the security check. A better solution is to sign the macro. See “Signing a Macro” below.
  4. File > Import File … > Select QuoteFixNames.bas > Open
  5. File > Import File … > Select QuoteFixHtml.bas > Open

Note: You can easily import all files at once by dragging them from the Explorer into the VBA editor and dropping them onto the project tree.

Configure Outlook to prepare the messages for QuoteFixMacro

  1. File > Options > Mail > (scroll down to) Replies and forwards

    This step is only required for FixedForward. Replies do not depend on it, because QuoteFixMacro prefixes the original text itself.

    • Change the value of “When replying to a message” to “Prefix each line of the original message”
    • Ensure that “Prefix each line in a plain-text message with” contains “> ”
    • Change the value “When replying to a message” back to “Include original message text”
  2. Tools > Options > Mail > (scroll up to) Compose messages

    • Change the value of “Compose messages in this format:” to “Plain Text”
  3. Tools > Options > Mail > (scroll down to) Message format

    • “Automatic wrap text at character”: 76 characters (which is the default when you did not touch that setting)
  4. QuoteFixMacro also replies to HTML mails: The reply is a plain text mail, the original mail is left untouched. See Replying to HTML mails for details. Reading all emails as plain text is therefore optional.
    🇺🇸: Navigate to Tools > Options > Trust Center > Trust Center Settings… > Email Security > “Read as Plain Text”

    • 🇩🇪: Datei > Optionen > Trust Center > E-Mail-Sicherheit > Als Nur-Text lesen
    • 🇺🇸: [X] Read all standard mail in plain text,
    • 🇩🇪: Standardnachrichten im Nur-Text-Format lesen
    • 🇺🇸: [X] Read all digitally signed mail in plain text”.
    • See also Microsoft KB 831607 and “Read email messages in plain text” for another explanation.

Set email signature

QuoteFixMacro needs to know where to put the fixed quote. For that, it uses the placeholder %Q in the signature.

Go to File > Options > Mail > section “Compose messages” > Signatures…

  • Create a signature that is only used for reply and forward. You have to insert at least %Q to get the quoted original mail.
  • Assign this signature to every mail account you want to use.

Alternatively, one can configure QUOTING_TEMPLATE in the code (see Advanced Features).

Assign macros to buttons

After importing the module, you need to replace the original “Reply” and “ReplyAll” buttons with buttons that trigger the macros defined in the file you just imported. Remember, these buttons are in Outlook’s main window, and also in the message window that pops up when you double click on an email.

  1. Right-click on the toolbar and select “Customize…”
  2. Go to the “Quick Access Toolbar” tab
  3. Choose “Macros” at “Choose commands from”
  4. Drag the “FixedReply” and “FixedReplyAll” entries and drop it onto the toolbar

You can also change the name and image of the newly created buttons using the customization dialog. If you use “Fixed&Reply” as the name, Alt+R is kept as a shortcut for reply. Since Outlook does not support custom keybindings, you cannot map the shortcut Ctrl+R to the new FixedReply macro. Nevertheless, the mapping can be done by using AutoHotkey (see below).

Update

The modules depend on each other: update all of them together. In the VBA editor, remove the modules QuoteFixMacro, QuoteFixNames, and QuoteFixHtml (File > Remove…, no export needed), and import the new .bas files as described above.

Persist settings across updates

An update replaces the modules. Thus, any settings changed in the code are overwritten during an update. QuoteFixMacro can read settings from the registry. The macro NEVER stores entries in the registry by itself.

Store only the settings you want to differ from the defaults; everything else keeps following the defaults of new versions. Unknown or outdated entries are ignored.

  1. Import a .reg file: the folder configs/ contains examples (colored quotes, custom first names, templates with the Outlook signature) to adapt and double-click.
  2. Or create the entries by hand in this registry hive: HKEY_CURRENT_USER\Software\VB and VBA Program Settings\QuoteFixMacro\Config (string values, e.g., USE_COLORIZER = True).
  3. Or write a routine executing commands similar to Call SaveSetting("QuoteFixMacro", "Config", "STRIP_SIGNATURE", "False").

StoreDefaultConfiguration() writes all defaults into the registry; after that, the defaults of a new version are not used anymore.


Table of contents