Programowanie Główna arrow vbs arrow Prezentacja danych


Prezentacja danych
Prezentacja danych.

Używając Excela w celach prezentacyjnych nadchodzi potrzeba zaprezentowania danych. Czasem wystarczy tylko pewne chwilowe wyodrębnienie danych informacji z tabeli.
Załóżmy, że mamy małą tabelkę składającą się z 2 kolumna; nazwisk i sald kont.
Jest w niej 4 ludzi, 2 Kowalskich i 2 Nowaków, chcemy, aby tabelka się przefiltrowała i wyświetliła tylko Nowaków.
1
2
3
4
5

Range("B5:C9").Select
Selection.AutoFilter
Selection.AutoFilter Field:=1, Criteria1:="nowak"

Powyższe makro z całej tabelki wyświetli tylko salda, które poprzedza nazwisko nowak.
Jeśli chcemy przywrócić poprzedni stan, wyświetlania pełnej tabelki wystarczy wpisać coś takiego.
1
2
3
4

Range("B5:C7").Select
ActiveSheet.ShowAllData

Przedstawione tutaj funkcje dostępne są bezpośrednio z Excela, jednak czasami ich bezpośrednie wykorzystanie w makrach jest potrzebne, jeśli ma ono np. obliczyć jakąś sumę z podanego kryteria na czas obliczeń potrzebne są nam tylko dane wartości.

Dane można również zaprezentować w ciekawszej formie, jaką jest wykres. Ta kwestia jest dostępna również bezpośrednio z Excela, ale jeśli chcemy, aby wykres tworzył się dopiero po obliczeniach, dobrze wtedy było by wiedzieć jak. Nasz wykres ( w ty przypadku słupkowy) oprzemy o poprzedni przykład.
1
2
3
4
5
6
7
8
9
10
11
12

Range("B5:C9").Select
Charts.Add
ActiveChart.ChartType = xlColumnStacked
ActiveChart.SetSourceData Source:=Sheets("Arkusz1").Range("B5:C9"), PlotBy _
:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="Arkusz1"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "saldo"
End With

Na samym początku obejmujemy obszar.
Informujemy o dodaniu wykresu.
Informujemy o typie wykresu.
Podajemy dane oraz w jaki sposób maja być odczytane ( w tym przypadku orientacja kolumnowa).
Ustalamy ulokowanie pojawiającego się wykresu.
Ustalamy wartość posiadania tytułu na true i poniżej go podajemy.

Spróbujmy utworzyć teraz wykres na podstawie wygenerowanych danych.
Będzie to wyglądało następująco:
-tworzymy kolumnę zatytułowaną x
-tworzymy kolumnę zatytułowaną y
-pierwsza wartość x to - 2 a kolejne są o 0,5 większe aż do wartości 2 włącznie
-w są siadujących komórkach kolumny y podajemy formułę =x/2
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

Range("E1").Select
ActiveCell.FormulaR1C1 = "x"
Range("F1").Select
ActiveCell.FormulaR1C1 = "y"
Range("E2").Select
ActiveCell.FormulaR1C1 = "-2"
Range("F2").Select
ActiveCell.FormulaR1C1 = "=RC[-1]/2"
Range("E3").Select
ActiveCell.FormulaR1C1 = "=R[-1]C+0.5"
Range("E3").Select
Selection.AutoFill Destination:=Range("E3:E5"), Type:=xlFillDefault
Range("E3:E5").Select
Selection.AutoFill Destination:=Range("E3:E6"), Type:=xlFillDefault
Range("E3:E6").Select
Range("E6").Select
Selection.AutoFill Destination:=Range("E6:E8"), Type:=xlFillDefault
Range("E6:E8").Select
Selection.AutoFill Destination:=Range("E6:E10"), Type:=xlFillDefault
Range("E6:E10").Select
Range("F2").Select
Selection.AutoFill Destination:=Range("F2:F10"), Type:=xlFillDefault
Range("F2:F10").Select
Range("E1:F10").Select
Charts.Add
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
ActiveChart.SetSourceData Source:=Sheets("Arkusz1").Range("E1:F10"), PlotBy _
:=xlColumns
ActiveChart.Location Where:=xlLocationAsObject, Name:="Arkusz1"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "y"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "x"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "y"
End With


Ten kod wymaga dokładniejszego wytłumaczenia.
Zaznaczamy komórkę.
W aktualnie zaznaczoną komórkę, R1C1 informuje, że nie ma żadnego przesunięcia, wpisujemy x.
To samo dzieje się z y.
Pod komórką gdzie wpisaliśmy x wpisujemy -2.
Do komórki obok wpisujemy odwołanie, aby pobrać wartość z kolumny poprzedniej C[-1].
Pod komórką gdzie znajduje się -2 wpisujemy odwołanie do komórki stojącej wyżej R[-1], i dodajemy 0.5, będzie to krok na wykresie.
Później wypełniamy pozostałem pola.
Dochodzimy do tego co robiliśmy w poprzednim przypadku, tworzymy wykres, również z kolumnową orientacja odczytu, jednak jego typ to wykres punktowy na osiach x i y..
Nowością jest występowanie właściwości Axes, nadaje ona nazwy osiom, jak widać najpierw przypisujemy jest możliwość posiadania nazwy a później ja podajemy.



site copyright © http://www.e-kursy.com
darmowe zdjęcia | Hosting Zdjęć | zaproszenia | szkolenia informatyczne | aliasy
wyniki lotto | Katowice | program partnerski | kajaki | Blog dla nastolatek | call of duty 4 | KUCHNIE DO ZABUDOWY | kredyt samochodowy | Wędkarska Polska | zawory, grzejniki, kotły