Como automatizar o Excel a partir de um VBScript do lado do cliente

Resumo

Este artigo mostra o código do lado do cliente do Microsoft Visual Basic, Scripting Edition (VBScript) que inicia e automatiza o Microsoft Office Excel ou o Microsoft Excel quando um utilizador clica num botão numa página Web.

Mais Informações

Código de exemplo

  1. Crie o seguinte ficheiro HTML num editor de texto e guarde o ficheiro 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. Inicie o Microsoft Internet Explorer, escreva c:\excel.htm na Barra de endereço e, em seguida, prima Enter.

  3. Clique no botão que é apresentado na página.

Nota

Se lhe for pedido um aviso de segurança sobre um controlo ActiveX na página, clique em Sim.