Pytanie : Dodawać i usuwać seria dla Przodować wykres using VBA

Cześć,
I am trudność seria wykres który I wytwarzać using VBA. I chcieć różny seria w zależności od the wartość liczba w Przodować komórka. Ten część the kod pracować dobrze; , gdy I próbować dodatkowy seria the wykres tak, że I móc 3 różny różny przy różny (podczas gdy kolor cyfrowanie the seria wskazywać) I mieć jakaś szczęście - I utrzymywać błąd niezależnie od jakaś składnia który I use.

I znać że składnia być dosyć prosty i musieć z the składnia poprawny ale I móc poprawny być ono is.

As I twierdzić, I chcieć sprawnie jeden seria (jeden być różny w zależności od the wartość the komórka) dla 5 wybór podczas gdy na the różny wybór I chcieć sprawnie t pokaz 3 seria w kombinacja. Jeżeli the użytkownik wybierać opcja (1) -5 po otion 6, the wykres musieć tylko jeden seria znowu (więc I móc the seria po dostawianie - pewny).

Please egzamininować the kod attached.
(1):
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
Public Okręt podwodny UpdateChart ()

    Ciemnawy ChtObj Jako ChartObject
    Ciemnawy PriceType Długo
    Ustalony ChtObj = ActiveSheet.ChartObjects (1)
    
    Application.ScreenUpdating = Fałszywy
    
    PriceType = ActiveSheet.Cells (13, 20). Wartość
    
    Jeżeli PriceType = (1) Wtedy
        ChtObj.Chart.SeriesCollection (1).Values = ActiveSheet.Range ("771: 1475")
        ChtObj.Chart.SeriesCollection (1).MarkerBackgroundColorIndex = (1)
        ChtObj.Chart.SeriesCollection (1).MarkerBackgroundColorIndex = 4
        ChtObj.Visible = Prawdziwy
    Inny
    Jeżeli PriceType = 2 Wtedy
        ChtObj.Chart.SeriesCollection (1).Values = ActiveSheet.Range ("$D$771: $D$1475")
        ChtObj.Chart.SeriesCollection (1).MarkerForegroundColorIndex = (1)
        ChtObj.Chart.SeriesCollection (1).MarkerBackgroundColorIndex = 5
        ChtObj.Visible = Prawdziwy
    Inny
    Jeżeli PriceType = 3 Wtedy
        ChtObj.Chart.SeriesCollection (1).Values = ActiveSheet.Range ("$E$771: $E$1475")
        ChtObj.Chart.SeriesCollection (1).MarkerForegroundColorIndex = (1)
        ChtObj.Chart.SeriesCollection (1).MarkerBackgroundColorIndex = 3
        ChtObj.Visible = Prawdziwy
    Inny
    Jeżeli PriceType = 4 Wtedy
        ChtObj.Chart.SeriesCollection (1).Values = ActiveSheet.Range ("$I$771: $I$1475")
        ChtObj.Chart.SeriesCollection (1).MarkerForegroundColorIndex = (1)
        ChtObj.Chart.SeriesCollection (1).MarkerBackgroundColorIndex = 9
        ChtObj.Visible = Prawdziwy
    Inny
    Jeżeli PriceType = 5 Wtedy
        ChtObj.Chart.SeriesCollection (1).Values = ActiveSheet.Range ("$F$771: $F$1475")
        ChtObj.Chart.SeriesCollection (1).MarkerForegroundColorIndex = (1)
        ChtObj.Chart.SeriesCollection (1).MarkerBackgroundColorIndex = 7
        ChtObj.Visible = Prawdziwy
    Inny
    Jeżeli PriceType = 6 Wtedy
        
        ChtObj.Chart.SeriesCollection (1).Values = ActiveSheet.Range ("D$771: $D$1475")
        ChtObj.Chart.SeriesCollection (1).MarkerForegroundColorIndex = (1)
        ChtObj.Chart.SeriesCollection (1).MarkerBackgroundColorIndex = 5
        ChrtObj.Chart.SeriesCollection.Add
        ChtObj.Chart.SeriesCollection (2).Values = ActiveSheet.Range ("E$771: $E$1475")
        ChtObj.Chart.SeriesCollection (2).MarkerForegroundColorIndex = (1)
        ChtObj.Chart.SeriesCollection (2).MarkerBackgroundColorIndex = 3
        ChrtObj.Chart.SeriesCollection.Add
        ChtObj.Chart.SeriesCollection (3).Values = ActiveSheet.Range ("I$771: $I$1475")
        ChtObj.Chart.SeriesCollection (3).MarkerForegroundColorIndex = (1)
        ChtObj.Chart.SeriesCollection (3).MarkerBackgroundColorIndex = 9
        ChtObj.Visible = Prawdziwy
    Kończyć Jeżeli
    Kończyć Jeżeli
    Kończyć Jeżeli
    Kończyć Jeżeli
    Kończyć Jeżeli
    Kończyć Jeżeli
    ActiveSheet.PivotTables ("PivotTable3") .PivotCache.Refresh

Application.ScreenUpdating = Prawdziwy

Końcówka Okręt podwodny

Odpowiedź : Dodawać i usuwać seria dla Przodować wykres using VBA

także the z blok pomagać the niepotrzebny kod, mieć nadzieję to być pomocniczo
(1):
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
Jawny Okręt podwodny UpdateChart ()
  
    Ciemnawy ChtObj Jako ChartObject
    Ciemnawy PriceType Długo
    Ustalony ChtObj = ActiveSheet.ChartObjects (1)
      
    Application.ScreenUpdating = Fałszywy
      
    PriceType = ActiveSheet.Cells (13, 20). Wartość
      
    Jeżeli PriceType = (1) Wtedy
        Z ChtObj.Chart.SeriesCollection (1)
            . Wartość = ActiveSheet.Range ("771: 1475")
            .MarkerBackgroundColorIndex = (1)
            .MarkerBackgroundColorIndex = 4
        Końcówka Z
        ChtObj.Visible = Prawdziwy
    ElseIf PriceType = 2 Wtedy
        Z ChtObj.Chart.SeriesCollection (1)
            . Wartość = ActiveSheet.Range ("$D$771: $D$1475")
            .MarkerForegroundColorIndex = (1)
            .MarkerBackgroundColorIndex = 5
        Końcówka Z
        ChtObj.Visible = Prawdziwy
    ElseIf PriceType = 3 Wtedy
        Z ChtObj.Chart.SeriesCollection (1)
            . Wartość = ActiveSheet.Range ("$E$771: $E$1475")
            .MarkerForegroundColorIndex = (1)
            .MarkerBackgroundColorIndex = 3
        Końcówka Z
        ChtObj.Visible = Prawdziwy
    ElseIf PriceType = 4 Wtedy
        Z ChtObj.Chart.SeriesCollection (1)
            . Wartość = ActiveSheet.Range ("$I$771: $I$1475")
            .MarkerForegroundColorIndex = (1)
            .MarkerBackgroundColorIndex = 9
        Końcówka Z
        ChtObj.Visible = Prawdziwy
    ElseIf PriceType = 5 Wtedy
        Z ChtObj.Chart.SeriesCollection (1)
            . Wartość = ActiveSheet.Range ("$F$771: $F$1475")
            .MarkerForegroundColorIndex = (1)
            .MarkerBackgroundColorIndex = 7
        Końcówka Z
        ChtObj.Visible = Prawdziwy
    ElseIf PriceType = 6 Wtedy
        Z ChtObj.Chart.SeriesCollection (1)
            . Wartość = ActiveSheet.Range ("D$771: $D$1475")
            .MarkerForegroundColorIndex = (1)
            .MarkerBackgroundColorIndex = 5
        Końcówka Z
        ActiveChart.SeriesCollection.NewSeries
        Z ChtObj.Chart.SeriesCollection (2)
            . Wartość = ActiveSheet.Range ("E$771: $E$1475")
            .MarkerForegroundColorIndex = (1)
            .MarkerBackgroundColorIndex = 3
        Końcówka Z
        ActiveChart.SeriesCollection.NewSeries
        Z ChtObj.Chart.SeriesCollection (3)
            . Wartość = ActiveSheet.Range ("I$771: $I$1475")
            .MarkerForegroundColorIndex = (1)
            .MarkerBackgroundColorIndex = 9
        Końcówka Z
        ChtObj.Visible = Prawdziwy
    Kończyć Jeżeli
    ActiveSheet.PivotTables ("PivotTable3") .PivotCache.Refresh
  
Application.ScreenUpdating = Prawdziwy
  
Końcówka Okręt podwodny
Inne rozwiązania  
 
programming4us programming4us