Microsoft KB Archive/198703

= How to automate Excel from a client-side VBScript =

Article ID: 198703

Article Last Modified on 1/23/2007

-

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

-



This article was previously published under Q198703



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.



Sample code
  Create the following HTML file in any text editor and save the file as c:\excel.htm.  





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 

   Start Microsoft Internet Explorer, type c:\excel.htm in the Address bar, and then press ENTER. 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.</li></ol>

<div class="references_section">