Tworzenie wykresów. Aplikacja końcowa.

1 Tworzenie wykresów. Aplikacja końcowa.Programowanie w V...
Author: Ksawery Minkina
0 downloads 2 Views

1 Tworzenie wykresów. Aplikacja końcowa.Programowanie w VBA Tworzenie wykresów. Aplikacja końcowa.

2 Wykresy Hierarchia: Worksheets(n).ChartObjects(m).ActivateActiveSheet.ChartObjects(m).Activate ActiveChart. m – liczba(1,2,3…) lub nazwa („Wykres 1”) Podstawowe podobiekty ActiveChart: ChartType, SetSourceData, Axes, ChartArea, PlotArea, SeriesCollection, ChartTitle.

3 Tworzenie nowego wykresuCharts.Add (ew. po uprzednim zaznaczeniu komórek z danymi przez range().select); Po stworzeniu nowego wykresu ostatnio stworzony wykres jest aktualnym wykresem (ActiveChart). Teraz można dopiero nadawać mu wszystkie właściwości. Komendy z następnych slajdów są ułożone w takiej kolejności jak ich kolejność w kodzie programu.

4 Tworzenie wykresu Typ wykresu: właściwość ChartType, wartości, przykładowe (najczęstsze): xlXYScatter – wykres punktowy (pojedyncze punkty); xlXYScatterSmooth – j.w. (punkty połączone wygładzonymi liniami); xlXYScatterSmoothNoMarkers – j.w. (wygładzona linia między punktami, bez zaznaczonych samych punktów).

5 Tworzenie wykresu - Po stworzeniu wykresu i ustawieniu typu użyć metodActiveChart.SeriesCollection.NewSeries (pierwszy stworzony wykres pierwszego wykresu ma jedna serie stworzona, ale i tak uzywamy tej komendy zawsze) Po czym ActiveChart.SeriesCollection(n). gdzie n to numer wykresu (lub jego nazwa w ””), a właściwości to, np.: XValues = Worksheets("Arkusz1").Range("A1:A25") (X) Values = Worksheets("Arkusz1").Range("B1:B25") (Y) Name = "przewodnosc1" (nazwa serii) Trendlines.Add(Type:=xlLinear).Select (dodanie linii trendu)

6 Tworzenie wykresu, c.d. Dodawanie danych (inne metody, nie używane w naszym ćwiczeniu): Przed stworzeniem wykresu należy zaznaczyć zakres (Range().Select) danych; Po stworzeniu użyć metody ActiveChart.SetSourceData Source := Sheets().Range(), PlotBy := xlColumns (lub xlRows), w nawiasach w cudzysłowach odpowiednie nazwy.

7 Ustawianie osi Tablica obiektów Axes (elementy I: xlValue, xlCategoryelementy II: xlPrimary, xlSecondary), właściwości: HasTitle = True (posiadanie tytułu) HasMajorGridlines = False (kasowanie osi siatki) (HasMinorGridlines, oba tylko z Axes(I), bez II) MaximumScale = (i MinimumScale) (maksimum/minimum osi, tylko Axes(I))

8 Obszar wykresu i obszar kreśleniaChartArea / PlotArea, właściwości/metody: PlotArea.ClearFormats (kasowanie tła) PlotArea.Interior.ColorIndex = (ustawianie koloru tła) ChartArea.Interior.ColorIndex = (ustawianie koloru tła)

9 Tytuł wykresu i opisanie osiAxes(xlCategory, xlPrimary). HasTitle = True (pokazanie tytułu osi X) AxisTitle.Characters.Text = "" (tytuł osi) Bezpośrednio po Activechart: HasTitle = True (pokazanie tytułu wykresu) ChartTitle.Text = "" (tytuł wykresu) Legend.Delete (skasowanie legendy)

10 Dodatki Makro, aby działało, musi być uruchomione z poziomu arkusza, w którym mamy dane, nie innego wykresu lub z poziomu edytora VBA, bo będą kłopoty; Zakres danych wybranych jako źródło do serii w wykresie nie może zaczynać się od pustej komórki.

11 Zadanie ostatnie Wczytaj dane i program z zajęć numer 8;Dodaj do formularza dwa przyciski: „Stwórz wykres L=f(sqr(c))” i „Stwórz wykres L*sqr(c)=f(c)” Oba przyciski mają stwarzać wykresy (zgodne z opisami przycisków) z danych w odpowiednich kolumnach; Jeśli wybrane dane do wykresów będą prawidłowe, wówczas przy dodawaniu kolejnych danych do arkusza, wykresy powinny same się aktualizować.

12 Powodzenia na kolokwium!