ajuda vba

Cristiana

Membro
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 ... :-D

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
 
Boas!
Só mesmo esperimentando, mas algures aqui
ActiveChart.SeriesCollection(1).Name = "=""Grafico exemplo"""
ou aqui
ChartTitle.Characters.Text = "Grafico exemplo"
deves de ter se substituir por uma variavel que vai ser carregada com o nome que o user quer dar ao gráfico.
Podes sempre nao atribuir esse codigo ao botao, mas sim meter o botao a abrir uma janela com uma aplicação com varios botões/campos para preencher para fazer esse trabalho.
 
Back
Topo