Modifica grafici



  • Modifica grafici
    di Chris (utente non iscritto) data: 15/07/2012

    Ciao a tutti, avrei bisogno di inserire e modificare lo stile di una serie inserita in un grafico a dispersione xy.
    mi spiego meglio: ho un grafico a dispersione xy e voglio inserire delle nuove serie. excel in automatico assegna un colore e un certo spessore delle linee. io per ora sono riuscito solo a togliere i punti e sistemare le etichette ma ahimè non riesco a cambiare il colore delle serie e a ridimensionare le linee.
    ad esempio io vorrei avere tutte le serie colorate di nero e con linee spesse 1pt o 1.5pt a seconda del tipo di serie.
    ho provato a usare l'istruzione ".interior.color" ma, nonostante vba la esegua senza errori, non ottengo nessun risultato (la serie resta colorata con il colore di default imposto da excel).

    vi scrivo qui sotto il codice che ho implementato finora.

    grazie mille!


     
    For i = 1 To Nstaz
            ActiveChart.SeriesCollection.NewSeries
            
            With ActiveChart.SeriesCollection(i)
                .Name = Stazione(i)
                .XValues = "=Stazioni!$F$2:$H$2"
                .Values = "=Stazioni!$B$"  i + 1  ":$D$"  i + 1
                .Interior.Color = RGB(255, 255, 255)
                .Select
                Selection.MarkerStyle = -4142
                .Points(2).DataLabel.Select
                Selection.Delete
                .Points(3).DataLabel.Select
                Selection.Delete
                .Points(1).DataLabel.Select
                With Selection
                    .ShowSeriesName = True
                    .Separator = " "
                    .Position = xlLabelPositionLeft
                    If TipoImpianto(i) = "capotronco" Then
                        .Font.Size = 8
                        .Font.Bold = True
                    End If
                    If TipoImpianto(i) = "stazione" Then
                        .Font.Size = 7
                        .Font.Bold = True
                    End If
                    If TipoImpianto(i) = "fermata" Then
                        .Font.Size = 7
                    End If
                End With
            End With
        Next i


  • Modifica grafici
    di Chris (utente non iscritto) data: 15/07/2012

    Ciao a tutti, avrei bisogno di inserire e modificare lo stile di una serie inserita in un grafico a dispersione xy.
    mi spiego meglio: ho un grafico a dispersione xy e voglio inserire delle nuove serie. excel in automatico assegna un colore e un certo spessore delle linee. io per ora sono riuscito solo a togliere i punti e sistemare le etichette ma ahimè non riesco a cambiare il colore delle serie e a ridimensionare le linee.
    ad esempio io vorrei avere tutte le serie colorate di nero e con linee spesse 1pt o 1.5pt a seconda del tipo di serie.
    ho provato a usare l'istruzione ".interior.color" ma, nonostante vba la esegua senza errori, non ottengo nessun risultato (la serie resta colorata con il colore di default imposto da excel).

    vi scrivo qui sotto il codice che ho implementato finora.

    grazie mille!


     
    For i = 1 To Nstaz
            ActiveChart.SeriesCollection.NewSeries
            
            With ActiveChart.SeriesCollection(i)
                .Name = Stazione(i)
                .XValues = "=Stazioni!$F$2:$H$2"
                .Values = "=Stazioni!$B$"  i + 1  ":$D$"  i + 1
                .Interior.Color = RGB(255, 255, 255)
                .Select
                Selection.MarkerStyle = -4142
                .Points(2).DataLabel.Select
                Selection.Delete
                .Points(3).DataLabel.Select
                Selection.Delete
                .Points(1).DataLabel.Select
                With Selection
                    .ShowSeriesName = True
                    .Separator = " "
                    .Position = xlLabelPositionLeft
                    If TipoImpianto(i) = "capotronco" Then
                        .Font.Size = 8
                        .Font.Bold = True
                    End If
                    If TipoImpianto(i) = "stazione" Then
                        .Font.Size = 7
                        .Font.Bold = True
                    End If
                    If TipoImpianto(i) = "fermata" Then
                        .Font.Size = 7
                    End If
                End With
            End With
        Next i



  • di Francesco c. (utente non iscritto) data: 24/07/2012

    A parte che non è chiaro perchè aggiungere una nuova serie se poi non la utilizzi, ma dovresti usare .border.colorindex e non .interior.color:
     
    For each serie in ActiveChart.SeriesCollection
            
            With serie
                .Name = Stazione(i)
                .XValues = "=Stazioni!$F$2:$H$2"
                .Values = "=Stazioni!$B$"  i + 1  ":$D$"  i + 1
                .Border.ColorIndex = 1    'nero
                .MarkerStyle = -4142
    'ecc.
    
    Next