Olá,
sou nova nestas coisas de programação. Mas como vou precisar de usar nos próximos tempos vou-vos chatear com algumas questões ... algumas para voces vão ser muito básicas, mas para mim uma enorme dor de cabeça ...
Bem, para começar, eu estava a experimentar gravar macros em excel ... gravei a seguinte:
-----
Range("A6:B9").Select
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets("Folha1").Range("A6:B9"),
PlotBy:= _
xlColumns
ActiveChart.SeriesCollection(1).Name = "=""Grafico exemplo"""
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Grafico exemplo"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Grafico exemplo"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Variável x"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Variável y"
End With
With ActiveChart.Axes(xlCategory)
.HasMajorGridlines = True
.HasMinorGridlines = False
End With
With ActiveChart.Axes(xlValue)
.HasMajorGridlines = True
.HasMinorGridlines = False
End With
ActiveChart.HasLegend = False
ActiveChart.Axes(xlCategory).MajorGridlines.Select
With Selection.Border
.ColorIndex = 16
.Weight = xlHairline
.LineStyle = xlContinuous
End With
ActiveChart.Axes(xlValue).MajorGridlines.Select
With Selection.Border
.ColorIndex = 16
.Weight = xlHairline
.LineStyle = xlContinuous
End With
ActiveChart.SeriesCollection(1).Select
ActiveChart.SeriesCollection(1).Trendlines.Add(Type:=xlPower,
Forward:=0, _
Backward:=0, DisplayEquation:=False, DisplayRSquared:=False).Select
ActiveChart.SeriesCollection(1).Trendlines(1).Select
With Selection.Border
.ColorIndex = 10
.Weight = xlMedium
.LineStyle = xlContinuous
End With
ActiveChart.Axes(xlValue).MajorGridlines.Select
End Sub
---------------
Este código associei-o a um botão de forma que, o utilizador preencha uma tabela de valores e seja criado um gráfico devidamente editado numa nova folha do excel quando prime o botão.
Gostaria de o alterar de forma que se a pessoa clicar x vezes ele crie x folhas de excel com nomes diferentes.
Por exemplo, a pessoa preenche a tabela e clica no botão para fazer novo gráfico, e fica com um gráfico na folha "Grafico exemplo", depois altera a tabela e de novo clica no botão para fazer novo gráfico, e fica com um gráfico na folha "Grafico exemplo2" ...
Desde já muito obrigado
sou nova nestas coisas de programação. Mas como vou precisar de usar nos próximos tempos vou-vos chatear com algumas questões ... algumas para voces vão ser muito básicas, mas para mim uma enorme dor de cabeça ...
Bem, para começar, eu estava a experimentar gravar macros em excel ... gravei a seguinte:
-----
Range("A6:B9").Select
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets("Folha1").Range("A6:B9"),
PlotBy:= _
xlColumns
ActiveChart.SeriesCollection(1).Name = "=""Grafico exemplo"""
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Grafico exemplo"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "Grafico exemplo"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Variável x"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Variável y"
End With
With ActiveChart.Axes(xlCategory)
.HasMajorGridlines = True
.HasMinorGridlines = False
End With
With ActiveChart.Axes(xlValue)
.HasMajorGridlines = True
.HasMinorGridlines = False
End With
ActiveChart.HasLegend = False
ActiveChart.Axes(xlCategory).MajorGridlines.Select
With Selection.Border
.ColorIndex = 16
.Weight = xlHairline
.LineStyle = xlContinuous
End With
ActiveChart.Axes(xlValue).MajorGridlines.Select
With Selection.Border
.ColorIndex = 16
.Weight = xlHairline
.LineStyle = xlContinuous
End With
ActiveChart.SeriesCollection(1).Select
ActiveChart.SeriesCollection(1).Trendlines.Add(Type:=xlPower,
Forward:=0, _
Backward:=0, DisplayEquation:=False, DisplayRSquared:=False).Select
ActiveChart.SeriesCollection(1).Trendlines(1).Select
With Selection.Border
.ColorIndex = 10
.Weight = xlMedium
.LineStyle = xlContinuous
End With
ActiveChart.Axes(xlValue).MajorGridlines.Select
End Sub
---------------
Este código associei-o a um botão de forma que, o utilizador preencha uma tabela de valores e seja criado um gráfico devidamente editado numa nova folha do excel quando prime o botão.
Gostaria de o alterar de forma que se a pessoa clicar x vezes ele crie x folhas de excel com nomes diferentes.
Por exemplo, a pessoa preenche a tabela e clica no botão para fazer novo gráfico, e fica com um gráfico na folha "Grafico exemplo", depois altera a tabela e de novo clica no botão para fazer novo gráfico, e fica com um gráfico na folha "Grafico exemplo2" ...
Desde já muito obrigado