Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6784475
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T16:59:57+00:00 2026-05-26T16:59:57+00:00

One of my customers asked us to develop a "VBA macro". However, in the

  • 0

One of my customers asked us to develop a "VBA macro". However, in the 2010s, it seems weird to me to still use such outdated language, and I’m thinking about trying to convince the customer to use VSTO dev instead. However, as I’m new to both worlds, I need help to fill a pro/cons page to be able to argue this.

Of course, the answer can’t come without the actual requirement, let me try to resume:

Target : Word 2003/2007 (but I’m suspecting 2010 as a not yet known requirement) edit 2010 requirement confirmed

An external publishing system requires .doc file as input. The .doc file must have some specific styles applied : "Custom Header 1", "Custom header 2", etc.

The user can build documents, using Word, using two possible ways:

  1. Start the new document using a .dot file deployed on the computer
  2. Transform any existing document to match the target template

Users can "apply" the styles "simply" (simple UI): context menu, styles menu, custom action pane, etc.

By now, I see the following pro/cons:

  1. VBA

    • Pros:
      • ?
      • quick and dirty development (quick part of the sentence)
      • The customer has already some in production macro
    • Cons:
      • hard to find skilled developer
      • quick and dirty development (dirty part of the sentence)
  2. VSTO

    • Pros:
      • benefits of the .Net language (compiled, typed, rigorous, class library, etc.)
      • security model more flexible and powerful (trusting code signed with a trusted authority)
      • bridge to WPF panes possible
      • You work in Visual Studio and have access to its full set of features: refactoring, source control, etc.
    • Cons:
      • requires installation of the .Net framework (probably not an issue today) and VSTO runtime
      • harder to deploy
      • slightly more work at the start (but less in long term)
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-26T16:59:58+00:00Added an answer on May 26, 2026 at 4:59 pm

    I’m answering myself to the question, as the project is finished.

    I finally decided to write the application using a VBA macro. Here is the post-mortem conclusion of this choice :

    Pros:

    1. The team that will maintains the application has no C# knowledge, only VBA (main reason of my choice).
    2. Poor security model : it’s a pro because there is no other setup that putting the files in the right place.
    3. No runtime prerequisites

    Cons:

    1. The deployment was supposed to be simple.
      • I was counting of the possibility to play with Word options “User-template directory” and “Startup template directory”. But it wasn’t possible, because the app is not related to a specific entity in the customer organisation. I wasn’t allowed to “take ownership” of this settings for this application.
      • I ended in writing a custom NSIS script to deploy the application on the correct folders. With VSTO, a simple setup project (clickonce?) would have done the job.
    2. The language is so prehistoric ! Collections index starts to 1, array to 0, no OOP, poor out-of-the box language and library feature. That is not always a problem, but in my case, modeling the business rule was a bit painful (representing hierarchical data in a tree was not an easy job)
    3. Very limited integration with source control (code, as it’s embeded in the .dot files, was not historisable. Only the full .dot was)
    4. Error management very limited with VBA
    5. Poor IDE

    Remark:

    As an experienced C# developer, the pros/cons may be partial a bit.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

One of our customers experiences problem with our streaming application (win32). It seems like
Story : today one of our customers asked us if all the data he
One of my customers is experiencing a crash in my WPF application when saving
I have a slightly odd situation. One of my customers has an Asp.net (v2
Lets say I have one table called REVIEWS This table has Reviews that customers
On one section of my website, I ask my customers for their postal code
Lets say I have a Customers table and an Orders table with a one-to-many
We are a lead generating company and have developed one application where our customers
I've got two controllers: admin and customers, plus one more called sessions for handling
i have one xml like, Declare @xmldata xml; set @xmldata =' <Customers> <Id>1</Id> <Name>foo</Name>

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.