Você está na página 1de 2

Gerando um gráfico no Excel via VB http://www.macoratti.net/d180102.

htm

Criando um gráfico no Excel via Automação OLE no Visual Basic.

Vamos mostrar como criar um gráfico no Excel a partir de sua aplicação VB via automação OLE .

1- Inicie um novo projeto no VB e no formulário padrão insira um botão de comando -command1

2- Faça uma referência no projeto a - Microsoft Excel x.0 Object Library ( x.0 pode ser: 8.0 , 9.0 )

3- Insira o código abaixo no evento click do botão de comando:

Private Sub Command1_Click()

Dim oXL As Object ' Aplicação


Dim oBook As Object ' workbook
Dim oSheet As Object ' Worksheet
Dim oChart As Object ' grafico Excel

Dim iRow As Integer ' variavel para a linha atual


Dim iCol As Integer ' variavel para coluna atual

Const cNumCols = 6 ' numero de pontos em cada serie


Const cNumRows = 2 ' Numero de series

ReDim aTemp(1 To cNumRows, 1 To cNumCols)

'inicia o Excel e cria um novo workbook


Set oXL = CreateObject("Excel.application")
Set oBook = oXL.Workbooks.Add
Set oSheet = oBook.Worksheets.Item(1)

' Inclua alguns dados nas células para as duas series


Randomize Now()
For iRow = 1 To cNumRows
For iCol = 1 To cNumCols
aTemp(iRow, iCol) = Int(Rnd * 50) + 1
Next iCol
Next iRow
oSheet.Range("A1").Resize(cNumRows, cNumCols).Value = aTemp

'Inclui um objeto chart para o primeiro worksheet


Set oChart = oSheet.ChartObjects.Add(50, 40, 300, 200).Chart
oChart.SetSourceData Source:=oSheet.Range("A1").Resize(cNumRows, cNumCols)

' torna o Excel Visivel


oXL.Visible = True

oXL.UserControl = True

End Sub

- Ao iniciar o projeto ( Pressionando F5) o Excel irá ser iniciado e um novo workbook será criado.

- Os dados aleatórios ( Random ) serão incluidos no intervalo de células de A1:F2

- O gráfico será embutido na primeira worksheet

- O Gráfico será gerado com base nos dados aleatórios gerados. O resultado é exibido na figura a
seguir:

1 of 2 27/11/2019 17:24
Gerando um gráfico no Excel via VB http://www.macoratti.net/d180102.htm

Até a próxima...

2 of 2 27/11/2019 17:24

Você também pode gostar