Creating a .EXE to run excel macros

H

Hemanth

Hello,

I want create a self executing .exe file that opens an userform (or
dialogbox) with a Run button along with some other controls and runs a
VBA macro when user clicks on the button.

Can someone suggest me an easiest and quick way to do this? Also, can
it be done without using Visual Studio for VB (I only have access to MS
Excel with VBA support)?

Your help is much appreciated.

TIA,
Hemanth
 
J

John Coleman

Hemanth said:
Hello,

I want create a self executing .exe file that opens an userform (or
dialogbox) with a Run button along with some other controls and runs a
VBA macro when user clicks on the button.

Can someone suggest me an easiest and quick way to do this? Also, can
it be done without using Visual Studio for VB (I only have access to MS
Excel with VBA support)?

Your help is much appreciated.

TIA,
Hemanth

You can't use VBA to make stand-alone executables. You can use a
workbook open event that automatically shows the userform when the
workbook is open and create an icon linked to the workbook.
Functionally, this will have much of the same effect as what you are
asking for. You can also launch a VBA macro from VBScript (though you
need to create an instance of excel to do so, if a VBScript icon looks
better to you than an excel icon. If you want to get fancy, you can get
the script to run in a .hta file (an html application) and use the
browser to display the form and call the macro. I don't know how to do
this as I haven't yet had the opportunity to learn html applications,
but I know it can be done.

Just some ideas

-John Coleman
 
N

NickHK

Hemanth,
If you only have Excel, then creating an .exe is not possible.

By changing the appearance of Excel and/workbook, you can disguise Excel's
appearance.

What are you trying to achieve ?

NickHK
 
G

Guest

Without VB or an equivalent, you cannot make an .exe

What you can do is something like the following:

Hide all sheets except one, say, Sheet1.

Format Sheet1: no gridlines, no Tabs, no Headers, just white space

Open the Visual Basic Editor (Alt+F11)
In the ThisWorkbook module copy and paste the following:

Option Explicit
Sub Workbook_Open()
MyUserForm.Show
End Sub

This assumes that you already have a userform that you have
named: MyUserForm
which has one or more command buttons.
The command button(s) will have macros that are fired on their _Click events
Likely in the first click-event you will unhide any sheets needed by the
user to
continue, plus hide Sheet1.
Sheet1 should remain empty.
 
H

Hemanth

I think open workbook event with a userform should work fine for my
case. If not .exe, I'm looking for a way to emulate the same.

Thank you all for your suggestions.

- Hemanth
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top