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

  • Home
  • SEARCH
  • 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 7576769
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 30, 20262026-05-30T17:00:09+00:00 2026-05-30T17:00:09+00:00

I have a very simple Word sub in a dotm template: Sub YHelloThar(msg As

  • 0

I have a very simple Word sub in a dotm template:

Sub YHelloThar(msg As String)
    MsgBox (msg)
End Sub

I then have an Excel sub:

Sub CallWordSub()
        Dim wdApp As Word.Application
        Dim newDoc As Word.Document

        'Word template location   
        strFile = "C:\Some\Folder\MyWordDoc.dotm"
        'Get or create Word application
        Set wdApp = GetObject(, "Word.Application")
        If wdApp Is Nothing Then
            Set wdApp = CreateObject("Word.Application")
        End If
        'Create new Word doc from template
        Set newDoc= wdApp.Documents.Add(strFile)
        'Call the YHelloThar sub from the word doc
        Call wdApp.Run(strFile & "!YHelloThar", "Hello")
    End If
End Sub

The last line gives me “Run-time Error ‘438’: Object does not support this property or method.”

I’m not sure what I am doing wrong – everything I have looked up indicates this is the proper way to do call subs from different applications.

Furthermore, if I change the last line to be a parameter-less call it suddenly works correctly.

  • 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-30T17:00:10+00:00Added an answer on May 30, 2026 at 5:00 pm

    TRIED AND TESTED

    Call wdApp.Run("YHelloThar", "Hello")
    

    Also you have an extra End If at the end. A typo I guess?

    TIP: To avoid runtime errors, you will have to handle error just before calling

    Set wdApp = GetObject(, "Word.Application")
    

    FOLLOWUP OF MY TIP

    Here is an example. Also I have used Late Binding so that it will work with every Office Version.

    Sub Sample()
        Dim wdApp As Object, newDoc As Object
        Dim strFile As String
    
        strFile = "C:\Some\Folder\MyWordDoc.dotm"
    
        '~~> Establish an Word application object
        On Error Resume Next
        Set wdApp = GetObject(, "Word.Application")
    
        If Err.Number <> 0 Then
            Set wdApp = CreateObject("Word.Application")
        End If
        Err.Clear
        On Error GoTo 0
    
        wdApp.Visible = True
    
        Set newDoc = wdApp.Documents.Add(strFile)
    
        Call wdApp.Run("YHelloThar", "Hello")
    
        '
        '~~> Rest of the code
        '
    End Sub
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have a very simple Office utility question. Open Microsoft word (2003 or 2007),
I have a very simple ASP.Net page that acts as a front end for
The end result is very simple, I have to have something happen when a
i have very simple problem. I need to create model, that represent element of
I have very simple select like this: SELECT * FROM table WHERE column1 IN
I have very simple window where I have 2 buttons - one for cancel,
I have a very simple problem which requires a very quick and simple solution
I have a very simple WPF application in which I am using data binding
I have a very simple bit of script that changes the status of an
I have a very simple TCP server written in C. It runs indefinitely, waiting

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.