Programowanie w języku Visual Basic dla arkusza kalkulacyjnego Excel.

Slides:



Advertisements
Podobne prezentacje
Dr Aleksandra Gniot MARKETING Dr Aleksandra Gniot
Advertisements

Statistics – what is that? Statystyka dla gimnazjalistów.
SuperHost.pl td img {display: block;}
Metody Analizy Programów Wykład 02
Podstawy programowania w VBA
ARKUSZ KALKULACYJNY Sprawdzian umiejętności Prawidłowe odpowiedzi.
Cenniki 2005.
Algorytm Rochio’a.
Rzutowanie w rzutach prostokątnych.
Klasa III b.
Wykorzystanie pamięci półprzewodnikowych
AUTOMATYZACJA PRACY W EXCELU
Autor: Krystyna Bręk ZSZ im. Gen. I.Prądzyńskiego w Augustowie
Arkusz kalkulacyjny powtórzenie Małgorzata Medycka.
Statens senter for arkiv, bibliotek og museum Wskaźniki dla bibliotek publicznych Biblioteki w społeczeństwie wiedzy – strategie.
2010 © Uniwersytet Rzeszowski | 1 Temat: Autor: Jan Kowalski Ocena zagrożeń ludności cywilnej we współczesnych konfliktach zbrojnych.
Czyli jak zrobić prezentację komputerową?
Tajemnice klawiatury.
PROCENTY.
ANNA DEC Grupa KrZZTo2011.
Wzory Cramera (metoda wyznacznikowa)
OPRACOWANIE: Szkoły Pijarskie
Tworzenie tabel na stronach internetowych Program NVU Spis prezentacji: 1.Wstawianie tabeliWstawianie tabeli 2.ZakładkiZakładki.
Przeglądanie inOrder function BSTinorder(BSTNode root) if root NOT NULL BSTinorder(root.left) Print(root) BSTinorder(root.right) 2, 4, 6, 8, 9, 10, 12,
Microsoft® Office EXCEL 2003
SZABLONY STOSOWANIE SZABLONÓW PODZIEL I ZMIERZ. Określanie miary i podziału Czasami konieczne jest zaznaczenie punktów na obiekcie położonych w równych.
Formatowanie i modyfikacja dokumentu tekstowego
BUDOWA ARKUSZA KALKULACYJNEGO
KLAWIATURA Co to jest?.
PRZEGLĄD JESIENNY SZKÓŁ wrzesień - październik 2005 R.
ALGORYTM.
Wyliczenia w SPAN - teoria
xHTML jako rozszerzenie HTML
Tworzenie tabel w edytorze Word
Synergy D6 flow Uniwersalny Kompozyt
T58 Zasady dynamiki 2x45 wykład 2x45 ćwiczenia. I zasada dynamiki I zasada dynamiki może być (jest) formułowana na kilka sposobów. Najczęściej ma ona.
Planowanie trasy.
Elementy programowania
Elementy programowania97 Użycie zmiennych w procedurze Sub ObliczWiek() 'deklaracja zmiennych Dim ImieNazwisko As String Dim DataUrodzenia As Date Dim.
SKALA.
A. Jędryczkowski – 2006 ©. Tablica to struktura danych zawierająca zbiór obiektów tego samego typu i odpowiada matematycznemu pojęciu wektora (tablica.
Budowa programu #include /*instrukcje preprocesora */ #include int main(void) { /*podstawowa funkcja programu */ int a=1; /*deklaracja i inicjalizacja.
Narzędzie wspomagające projektowanie aplikacji Proficy iFIX
PARAMETRY OBSERWACYJNE W KOMOLOGII
Programowanie ruchu narzędzia
HTML cz.3 Tabele cd. oraz ramki
RYSUNEK TECHNICZNY NA LEKCJACH TECHNIKI: MATERIAŁY DYDAKTYCZNE W FORMIE PREZENTACJI DLA KLASY IV INTEGRACYJNEJ SP mgr Grażyna Serewiś.
Temat 5: Elementy meta.
Temat 1: Umieszczanie skryptów w dokumencie
Temat 6: Elementy podstawowe
PROCEDURA LOGOWANIA SIĘ DO PANELU Ogólnopolski Program Partnerski dla Nauczycieli TWÓRCZY NAUCZYCIEL – TWÓRCZA EDUKACJA 1. Kliknij na wybraną zakładkę
Warsztaty użytkowników programu PLANS – Karwia06 Język makropoleceń JMP programu PLANS Część I mgr inż. Tomasz Zdun.
Instrukcja switch switch (wyrażenie) { case wart_1 : { instr_1; break; } case wart_2 : { instr_2; break; } … case wart_n : { instr_n; break; } default.
Obsługa strumienia wejścia/wyjścia /zajęcia nr 2/ printf – wyświetlanie scanf – ??? dla printf: \n - nowa linia \t - tabulator poziomy \b - znak cofania.
Instrukcje sterujące: W instrukcjach sterujących podejmowane są decyzje o wykonaniu tych czy innych instrukcji programu. Decyzje te podejmowane są w zależności.
Wnioskowanie w stylu Mamdaniego.
Komtech Sp. z o.o. Magic Janusz ROŻEJ.
Lab 3, 4, 5 Zaawansowane arkusze kalkulacyjne. autor: Piotr Marczewski WYKRESY Typy wykresów Grupowane Skumulowane Skumulowane.
Wyniki klasyfikacji klasy 4 – 6 rok szkolny 2013/2014 I semestr
Programowanie Matlaba
RZUTOWANIE PROSTOKĄTNE.
Podstawy Visual Basic for Applications (cz. III)
Projektowanie płyt z połączeniami drukowanymi
RZUTOWANIE PROSTOKĄTNE
Adresowanie komórek w Excelu
Wprowadzenie do VBA Excel 2013
Treści multimedialne - kodowanie, przetwarzanie, prezentacja Odtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
567.Jakie prądy płyną przez poszczególne opory na schemacie poniżej, jeśli R 1 =3 , R 2 =7 , R 3 =20 , U=20V, a galwanometr wskazuje i G =0? B R1R1.
RZUTOWANIE PROSTOKĄTNE
Visual Basic w programie Microsoft Excel
Zapis prezentacji:

Programowanie w języku Visual Basic dla arkusza kalkulacyjnego Excel.

W celu dostosowania arkusza kalkulacyjnego do swoich potrzeb, użytkownik może tworzyć tzw. Makra (skrót od makrokomendy), czyli programy w języku Visual Basic. Najprostszą i zarazem najprymitywniejszą formą tworzenia makra jest automatyczne rejestrowanie czynności wykonywanych ręcznie przez użytkownika na arkuszu. Takie makro, po uruchomieniu odtworzy dokładnie wszystkie wykonane operacje.

Podstawowe komendy makr w arkuszu kalkulacyjnym

Wstawianie napisów – ActiveCell.FormulaR1C1 = Range("B1").Select ActiveCell.FormulaR1C1 = "Obliczenie średniej arytmetycznej" Range("A3").Select: ActiveCell.FormulaR1C1 = "Nr" Range("B3"). ActiveCell.FormulaR1C1 = "L"

Parametry tekstu:

Zmiana arkusza: Zmiana na Arkusz2 Sheets("Arkusz2").Select

Rysowanie ramek:

Grubości linii gruba (.Weight = xlThick), średnia(.Weight = xlMedium), cienka(.Weight = xlThin),

Zaznaczenie obszaru: Range("A3:F9").Select Rysowanie linii zewnętrznych (Edge): - lewa ramka (xlEdgeLeft) With Selection.Borders(xlEdgeLeft).LineStyle = xlContinuous.Weight = xlThick End With

- górna ramka (xlEdgeTop) With Selection.Borders(xlEdgeTop).LineStyle = xlContinuous.Weight = xlThick End With - dolna ramka (xlEdgeBottom) With Selection.Borders(xlEdgeBottom).LineStyle = xlContinuous.Weight = xlThick End With

- prawa ramka (xlEdgeRight) With Selection.Borders(xlEdgeRight).LineStyle = xlContinuous.Weight = xlThick End With

Linie wewnętrzne (Inside): - linie pionowe (xlInsideVertical) With Selection.Borders(xlInsideVertical).LineStyle = xlContinuous.Weight = xlThin End With - linie poziome (xlInsideHorizontal) With Selection.Borders(xlInsideHorizontal).LineStyle = xlContinuous.Weight = xlMedium End With

Range("A3:F9").Select With Selection.Borders(xlEdgeLeft).Weight = xlThick.Borders(xlEdgeTop).Weight = xlThick.Borders(xlEdgeBottom).Weight = xlThick.Borders(xlEdgeRight).Weight = xlThick.Borders(xlInsideVertical).Weight = xlThin.Borders(xlInsideHorizontal).Weight = xlMedium End With

W polach B4:B9 będziemy wpisywać dane, a więc obszar ten nie może być zablokowany ani ukryty. Range("B4:B9").Select Selection.Locked = False Selection.FormulaHidden = False

Sub srednia() '**************** WYCZYSZCZENIE ZAWARTOŚCI ARKUSZA ***** ActiveSheet.Unprotect Range("A2:F30").Select Selection.Delete Shift:=xlUp '**************** WSTAWIENIE TYTUŁU ******************* Range("B1").Select Selection.Font.Bold = True Selection.Font.Italic = True ActiveCell.FormulaR1C1 = "Obliczenie średniej arytmetycznej "

'******************* PYTANIE O LICZBĘ POMIARÓW ***************** Range("C2").Select liczba = InputBox("Podaj liczbe wartości do uśrednienia") lis = Trim(Str(liczba)) Str –zamiana liczby na string; Trim – usuwanie zbędnych spacji

'****************** WSTAWIANIE OPISÓW TABELKI *********************** Range("A3").ActiveCell.FormulaR1C1 = "Nr" Range("B3").ActiveCell.FormulaR1C1 = "L" Range("C3").ActiveCell.FormulaR1C1 = "l" Range("D3").ActiveCell.FormulaR1C1 = "v" Range("E3").ActiveCell.FormulaR1C1 = "vv" Range("A4").ActiveCell.FormulaR1C1 = "1" Range("A5").ActiveCell.FormulaR1C1 = "2" Range("A3:E3").Select: Selection.HorizontalAlignment = xlCenter

'*************** WSTAWIANIE NUMERÓW POMIARÓW ***************** ls = Trim(Str(liczba + 3)) ra = "A4:A" + ls Range("A4:A5").Select Selection.AutoFill Destination:=Range(ra), Type:=xlFillDefault Range(ra).Select: Selection.HorizontalAlignment = xlCenter

'********** WSTAWIANIE NAPISU Xmin ***************** r3 = "A" + Trim(Str(liczba + 5)) Range(r3).Select Selection.Font.Bold = True ActiveCell.FormulaR1C1 = "xmin= With ActiveCell.Characters(Start:=2, Length:=3).Font.Subscript = True End With Selection.HorizontalAlignment = xlRight

'*********** WSTAWIANIE NAPISU DELTA X ************** r4 = "A" + Trim(Str(liczba + 6)) Range(r4).Select Selection.Font.Bold = True ActiveCell.FormulaR1C1 = "Dx=" With ActiveCell.Characters(Start:=1, Length:=1).Font.Name = "Symbol" End With Selection.HorizontalAlignment = xlRight

'********* WSTAWIANIE NAPISU X= ********************** r5 = "A" + Trim(Str(liczba + 7)) Range(r5).Select Selection.Font.Bold = True ActiveCell.FormulaR1C1 = "X=" Selection.HorizontalAlignment = xlRight '********** OBLICZENIE Xmin I NADANIE NAZWY Xmin ************************ r3 = "B" + Trim(Str(liczba + 5)) Range(r3).Select ActiveCell.FormulaR1C1 = "=MIN(R[-7]C:R[-2]C)" ActiveWorkbook.Names.Add Name:="xmin" RefersToR1C1:="=Arkusz1!R" + Trim(Str(liczba + 5)) + "C2"

'*********** FORMATOWANIE PÓL Z DANYMI ****************** rb = "B4:B" + Trim(Str(liczba + 5)) Range(rb).Select Selection.NumberFormat = "0.00" Selection.HorizontalAlignment = xlRight Range("B4").Select '*********** OBLICZANIE WARTOŚCI l ********************* Range("C4").ActiveCell.FormulaR1C1 = "=(RC[-1]-xmin)*100" rc = "C4:C" + Trim(Str(liczba + 3)) Range("C4").Select Selection.AutoFill Destination:=Range(rc), Type:=xlFillDefault

'********** OBLICZANIE SUMY l *************************** Range("C" + Trim(Str(liczba + 4))).Select ActiveCell.FormulaR1C1 = "=SUM(R[-" + lis + "]C:R[-1]C)" '********* OBLICZENIE DELTA X ****************** rb = "B" + Trim(Str(liczba + 6)) Range(rb).Select ActiveCell.FormulaR1C1 = "=R[-2]C[1]/" + lis ActiveWorkbook.Names.Add Name:="dx", RefersToR1C1:="=Arkusz1!R" + Trim(Str(liczba + 6)) + "C2" '********** OBLICZENIE X ************************ rb = "B" + Trim(Str(liczba + 7)) Range(rb).Select ActiveCell.FormulaR1C1 = "=R[-2]C+R[-1]C/100"

'********** FORMATOWANIE PÓL Dx i X ****************** rb = "B" + Trim(Str(liczba + 6)) + ":B" + Trim(Str(liczba + 7)) Range(rb).Select Selection.NumberFormat = "0.00" Selection.HorizontalAlignment = xlRight '*********** OBLICZENIE V ********************** Range("D4").Select: ActiveCell.FormulaR1C1 = "=(dx-RC[-1])" rd = "D4:D" + Trim(Str(liczba + 3)) Range("D4").Select Selection.AutoFill Destination:=Range(rd), Type:=xlFillDefault

'************ OBLICZENIE SUMY V ************************** Range("D" + Trim(Str(liczba + 4))).Select ActiveCell.FormulaR1C1 = "=SUM(R[-" + lis + "]C:R[-1]C)" '*********** OBLICZENIE VV ************************* Range("E4").Select: ActiveCell.FormulaR1C1 = "=RC[-1]^2" re = "E4:E" + Trim(Str(liczba + 3)) Range("E4").Select Selection.AutoFill Destination:=Range(re), Type:=xlFillDefault '************ OBLICZENIE SUMY VV ********************** Range("E" + Trim(Str(liczba + 4))).Select ActiveCell.FormulaR1C1 = "=SUM(R[-" + Trim(Str(liczba)) + "]C:R[-1]C)"

'************ FORMATOWANIE PÓL V I VV ****************** rb = "D4:E" + Trim(Str(liczba + 4)) Range(rb).Select Selection.NumberFormat = "0.00" Selection.HorizontalAlignment = xlRight '************ WSTAWIANIE NAPISÓW m= i mx = *********************** rd = "D" + Trim(Str(liczba + 6)) Range(rd).Select: ActiveCell.FormulaR1C1 = "m =" Selection.HorizontalAlignment = xlRight rd = "D" + Trim(Str(liczba + 7)) Range(rd).Select ActiveCell.FormulaR1C1 = "mx =" ActiveCell.Characters(Start:=2, Length:=1).Font.Subscript = True Selection.HorizontalAlignment = xlRight

'************ OBLICZANIE WARTOŚCI m= i mx = *********************** re = "E" + Trim(Str(liczba + 6)) Range(re).Select ActiveCell.FormulaR1C1 = "=SQRT(R[-2]C/" + Trim(Str(liczba - 1)) + ")" re = "E" + Trim(Str(liczba + 7)) Range(re).Select: ActiveCell.FormulaR1C1 = "=R[-1]C/SQRT(" + lis + ")" '************ FORMATOWANIE PÓL m i mx ****************************** rb = "E" + Trim(Str(liczba + 6)) + ":E" + Trim(Str(liczba + 7)) Range(rb).Select Selection.NumberFormat = "0.0"

'**************** RYSOWANIE RAMEK ********************************* r2 = "A3:E" + ls Range(r2).Select With Selection.Borders(xlEdgeLeft).Weight = xlThick.Borders(xlEdgeTop).Weight = xlThick.Borders(xlEdgeBottom).Weight = xlThick.Borders(xlEdgeRight).Weight = xlThick.Borders(xlInsideVertical).Weight = xlThin.Borders(xlInsideHorizontal).Weight = xlThin End With

'******** ZAZNACZENIE PÓL NIECHRONIONYCH ********** rb = "B4:B" + ls Range(rb).Select Selection.Locked = False Selection.FormulaHidden = False Selection.Interior.ColorIndex = 27 '*********** WŁĄCZENIE OCHRONY ARKUSZA ************** ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True Range("B4").Select End Sub