Provavelmente, é mais fácil escrever uma macro rápida, algo como
Sub SetWeights()
Dim srs As Series
For Each srs In ActiveSheet.ChartObjects("Chart 1").Chart.SeriesCollection
srs.Format.Line.Weight = 0.75
Next
End Sub
Existe uma maneira de editar o peso de todas as linhas de uma só vez em um gráfico de linhas do Excel?
Eu tenho um gráfico com cerca de 50 séries de dados, e é muito para passar por todos eles e alterar os pesos individualmente, e é difícil ver os dados se as linhas eram mais finas, seria um pouco Mais fácil). Não consigo ver uma maneira de selecioná-los, o que parece um pouco ruim.
Edit: Eu finalmente consegui trabalhar com o seguinte código (depois de aprender um pouco de VB). Eu não pareço ajudar a legibilidade do gráfico muito embora! Chris ajudou-me a resolver o problema, por isso vou dar-lhe o carrapato.
Sub onepxlines()
With Selection
MsgBox ("Selection: " & TypeName(Selection))
If TypeName(Selection) = "ChartArea" Then
Dim area As ChartArea
Set area = Selection
MsgBox ("Area parent: " & TypeName(area.Parent))
If TypeName(area.Parent) = "Chart" Then
Dim chart As chart
Set chart = area.Parent
Dim srs As Series
For Each srs In chart.SeriesCollection
srs.Format.Line.Weight = 1.5
Next
End If
End If
End With
End Sub
Esta é uma versão mais compatível com copiar e colar da resposta de Chris:
Sub SetWeights()
Dim srs As Series
For Each srs In ActiveChart.SeriesCollection
srs.Format.Line.Weight = 0.25
Next
End Sub
Basta selecionar o gráfico e executar a macro.
Aprimoramento: crie uma variável VB (LineWT) que aponte para uma célula na planilha. Então, em vez de "Format.Line.Weight = 0.25", mude 0.25 para LineWT. Em seguida, você pode alterar o peso da linha alterando-o na planilha e clicando no botão da macro. Você pode usar um código semelhante para definir nomes de eixos X / Y com ponteiros para a planilha.
Isso funcionou perfeitamente para mim. Eu usei esse código para editá-lo em todos os gráficos em todas as planilhas de uma pasta de trabalho
Sub ChangeLineType()
'This macro will print all embedded charts in the active workbook
'
Application.ScreenUpdating = False
Dim Sht As Object
Dim Cht As ChartObject
For Each Sht In ActiveWorkbook.Sheets
For Each Cht In Sht.ChartObjects
Cht.Activate
ActiveChart.ChartArea.Select
'ActiveWindow.SelectedSheets.PrintOut
Dim srs As Series
For Each srs In ActiveChart.SeriesCollection
srs.Format.Line.Weight = 0.25
Next
Next
Next
End Sub
Eu não acho que você pode selecionar várias linhas. A maneira mais simples é provavelmente alterar um e, em seguida, selecionar cada um deles, por sua vez, use Ctrl-Y para percorrer e refazer a alteração de peso da linha.
Este código altera a largura da linha de todos os gráficos na planilha ativa incluindo as planilhas de gráfico :
' Sets the line thickness for all charts in the active spreadsheet.
Sub ChangeLineType()
Dim Cht As Chart
Dim Chts As New Collection
Dim Sht As Object ' Can be Chart or WorkSheet
For Each Sht In ActiveWorkbook.Sheets
If TypeName(Sht) = "Chart" Then
Chts.Add Sht
Else
For Each Cht In Sht.ChartObjects
Chts.Add Cht
Next
End If
Next
Application.ScreenUpdating = False
For Each Cht In Chts
Dim Srs As Series
For Each Srs In Cht.SeriesCollection
Srs.Format.Line.Weight = 0.25
Next Srs
Next Cht
End Sub
(Adaptado da resposta de David Markman.)
Na guia Início, na seção Fonte, selecione a lista suspensa Bordas. Escolha o estilo de linha ou a cor desejada. Um lápis aparecerá. Em vez de usar o lápis para clicar em cada linha que você deseja alterar, vá para o canto da grade de células que você deseja alterar e mantenha pressionada a tecla CNTRL. Arraste o lápis sobre a grade de células necessária e tudo mudará para o estilo ou cor que você selecionou.