Unidades de tempo e formatação automática do eixo y no Excel

1

Eu tenho um gráfico com valores de tempo no eixo vertical (Y). Como os valores podem mudar muito, a formatação das unidades menores e maiores do eixo é automática.

O problema é que o Excel escolhe valores que poderiam ser bons se fossem decimais, mas não são ideais quando se usa tempos.

Por exemplo, 0:00, 0:28, 0:57, 1:26, 1:55, 2:24, 2:52 (correspondem a etapas de 0,02 decimal)

Existe uma maneira de ter uma escala automática que parece legal ao usar o tempo no eixo vertical?

    
por Matteo 05.02.2013 / 08:30

1 resposta

4

Você pode usar o VBA para garantir que o valor máximo seja sempre uma hora inteira, digamos, e que a unidade secundária seja de 5 minutos e os principais 10 minutos.

A macro pode ficar muito complexa dependendo de quanto você deseja automatizar. Muito mais fácil seria quatro células da planilha onde você pode digitar os valores desejados min, max, major, minor como o tempo e o gráfico é atualizado instantaneamente.

Por exemplo, um evento de alteração na planilha poderia ter esta aparência:

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("chrtSettings")) Is Nothing Then

    With ActiveSheet.ChartObjects("Chart 1").Chart
        .Axes(xlValue).MinimumScale = Range("min")
        .Axes(xlValue).MaximumScale = Range("max")
        .Axes(xlValue).MajorUnit = Range("major")
        .Axes(xlValue).MinorUnit = Range("minor")
    End With


End If
End Sub

E na planilha há um intervalo de células (com nomes de intervalo) onde os valores podem ser definidos rapidamente

    
por 05.02.2013 / 10:16