How to automate Excel from a client-side VBScript

Article translations Article translations
Article ID: 198703 - View products that this article applies to.
This article was previously published under Q198703
Expand all | Collapse all

On This Page

SUMMARY

This article illustrates Microsoft Visual Basic, Scripting Edition (VBScript) client-side code that launches and automates Microsoft Office Excel or Microsoft Excel when a user clicks a button on a Web page.

MORE INFORMATION

Sample code

  1. Create the following HTML file in any text editor and save the file as c:\excel.htm.
    <HTML>
    <BODY>
    
    <INPUT id=button1 name=button1 type=button value=Button>
    
    <SCRIPT LANGUAGE="VBScript">
    
           sub button1_onclick()
    
              ' Launch Excel
              dim app
              set app = createobject("Excel.Application")
        
              ' Make it visible
              app.Visible = true
        
              ' Add a new workbook
              dim wb
              set wb = app.workbooks.add
        
              ' Fill array of values first...
              dim arr(19,9) ' Note: VBScript is zero-based
              for i = 1 to 20
                 for j = 1 to 10
                    arr(i-1,j-1) = i*j
                 next
              next
        
              ' Declare a range object to hold our data
              dim rng
              set rng = wb.Activesheet.Range("A1").Resize(20,10)
        
              ' Now assign them all in one shot...
              rng.value = arr
        
              ' Add a new chart based on the data
              wb.Charts.Add
              wb.ActiveChart.ChartType = 70 'xl3dPieExploded
              wb.ActiveChart.SetSourceData rng, 2 ' xlColumns
              wb.ActiveChart.Location 2, "Sheet1" 'xlLocationAsObject
        
              ' Rotate it around...
              for i = 1 to 360 step 30
                 wb.activechart.rotation = i
              next
    
              ' Give the user control of Excel
              app.UserControl = true
    
           end sub
    </SCRIPT>
    
    </BODY>
    </HTML>
    					
  2. Start Microsoft Internet Explorer, type c:\excel.htm in the Address bar, and then press ENTER.
  3. Click the button that is displayed on the page.

    Note If you are prompted by a security warning about an ActiveX control on the page, click Yes.

REFERENCES

For more information, click the following article number to view the article in the Microsoft Knowledge Base:
195826 CreateObject fails from client-side scripts

Properties

Article ID: 198703 - Last Review: January 23, 2007 - Revision: 5.2
APPLIES TO
  • Microsoft Office Excel 2007
  • Microsoft Office Excel 2003
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 97 Standard Edition
  • Microsoft Visual Basic, Scripting Edition 5.0
Keywords: 
kbhowto KB198703

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com