Algoritmi. Structuri de control. Limbajul VBA

Slides:



Advertisements
Similar presentations
Batalia sexelor O lume dominata de barbati vs o lume dominata de femei.
Advertisements

1 const #define DIMENSIUNE 1000 const int DIMENSIUNE = 1000; Utilizarea valorilor constante este importantă, de exemplu, în declararea tablourilor de date.
Cursul 4 – 15 Martie 1.  Din Cursurile trecute…  Forward Engineering  Reverse Engineering  Diagrame de Interacţiuni ◦ Diagrame de Secvenţă ◦ Diagrame.
POSTA ELECTRONICA Ana-Maria Tache Ioana Cristina Ciufu.
C3 – LPO: I/E, tablou, sir CUPRINS Citirea datelor in mod
Februarie 2018 ASE Bucuresti
ACTIVITATEA 1 -,, PROFESOR IT LA PAPI’’
Subinterogări multiple
Subinterogari.
Oracle Academy Lead Adjunct
Funcţii Excel definite de utilizator (FDU) în VBA
Placa de bază.
Instrumente CASE Curs nr. 7.
Căutarea şi regăsirea informaţiei.
SOFTWARE Tipuri de software.
PASII INSTALARII SISTEMULUI DE OPERARE
Metoda Backtracking Metoda Implementarea
Dispozitive de stocare
1. Obiectivul disciplinei
CREATE, DROP,ALTER INSERT, UPDATE, DELETE
Curs 2 - Introducere în SAS
Structura pipeline a unui procesor MIPS
Căutarea şi regăsirea informaţiei.
Paxos Made Simple Autor: Puşcaş Radu George
Date Semistructurate, C12. Oracle / OR (2) Date Semistructurate,
Instrucțiunile limbajului VHDL
Template-uri de funcţii. Tratarea excepţiilor
CURS 5 Funcţii de intrare/ieşire Funcţia printf
Reflexia luminii.
METODA BACKTRACKING Examenul de bacalaureat 2012
Cursul 3 Cautare peste siruri problema cautarea naiva
Software product management
Generarea modelelor fractale
CONVERSII INTRE SISTEME DE NUMERATIE
Cookies și AJAX Ce sunt Cookies?
Recapitulare La Logica si argumentare
Programarea Orientată Obiect (POO)
MICROSOFT EXCEL.
Tipuri structurate Tipul tablou
Programarea calculatoarelor şi limbaje de programare I Capitolul 8
Programarea calculatoarelor şi limbaje de programare II Capitolul 3
Web Form BuilDer Coffee Cup.
Modificarea structurii unei tabele
Curs 6: Introducere în programarea SAS
Algoritm de crawling optimizat pe similaritate în documente HTML
MICROSOFT EXCEL Notiuni introductive
Formatarea paragrafului
Curs 6 Analize parametrice.
Funcții C/C++ continuare
prof. mrd. Negrilescu Nicolae Colegiul National Vlaicu Voda
INTERNET SERVICII INTERNET.
Forms (Formulare).
A great way to create a channel of communication
SUBSTANTE PURE SI AMESTECURI DE SUBSTANTE
Functia de documentare
SOAP -Simple Object Access Protocol-
Tehnologia informatiei Prof. ROMEO BOLOHAN
Programarea in limbajul Java 2004 Lecturer: Gavrila Cristian
Realizarea prezentarilor cu Microsoft PowerPoint
Crearea unei aplicatii Windows Forms simple
Aplicaţii specializate pentru realizarea unei prezentări – PowerPoint
Sistemul de control intern managerial
Review blog culianu.wordpress.com
Implementarea listelor simplu inlantuite
Funcții NULL.
Harti de imagini, Cadre, Stiluri
Despre lamaie.net De ce sunt lamaile acre? Realizatori: Cristina Cazan
Tabele WEB.
Siruri de caractere.
ALGORITMI ŞI SCHEME LOGICE
Presentation transcript:

Algoritmi. Structuri de control. Limbajul VBA

Algoritmi Definiţia 1 Un algoritm constă dintr-o mulţime ordonată de paşi executabili, descrişi fără echivoc, care definesc un proces finit. Definiţia 2 Un algoritm reprezintă un sistem de reguli conform cărora o informaţie iniţială este transformată într-o informaţie finală trecând printr-un număr finit de transformări intermediare. Definiţia 3 Un algoritm este un concept folosit în mod intuitiv pentru a desemna o mulţime finită de operaţii (instrucţiuni, comenzi) cunoscute, care executate într-o ordine bine stabilită, pornind de la un set de valori (intrări) produc, în timp finit, un alt set de valori (ieşiri)

Algoritmi informaţie admisibilă - informaţia iniţială pentru care un algoritm dat este aplicabil domeniul algoritmului - totalitatea informaţiilor admisibile unui algoritm A: DA FA FA -mulţimea în care DA ia valori DA- domeniul de definiţie a algoritmului

Algoritmi - caracteristici Generalitatea. Un algoritm A este aplicabil oricărei informaţii din domeniul său DA. Aceasta înseamnă că un algoritm nu rezolvă o singură problemă ci o clasă de probleme de acest tip. Finitudinea. Numărul transformărilor ce trebuie aplicate unei informaţii admisibile pentru a obţine informaţia finală corespunzătoare este finit. Unicitatea. regulile algoritmului determină în mod univoc toate transformările prin care acesta trece până la obţinerea informaţiei finale. După fiecare pas, regulile algoritmului determină în mod unic pasul care urmează. Mai mult, regulile algoritmului precizează în ce cazuri se obţine informaţia finală, după care algoritmul îşi încetează aplicabilitatea.

Algoritmi - etape Inițială De calcul Finală

Algoritmi - etape pseudocod ( limbaj logico-matematic) scheme logice cu ajutorul unui limbaj de programare Scheme logice – forme geometrice și segmente orientate pentru a indica ordinea operațiilor Pseudocod – limbaj logico – matematic ce permite descrierea programului în limbaj natural (chiar și în limba maternă a programatorului)

Algoritmi – descriere – scheme logice

Algoritmi – descriere – pseudocod Enunțuri standard – implică folosirea unor cuvinte rezervate numite cuvinte – cheie şi semne grafice convenţionale. Cuvintele cheie folosite în descrierea algoritmului apar subliniate. Exemplu: Scrie “Introduceţi valorile pentru a şi b” Pentru operaţiile de declarare a tipului de date, citire şi scriere se utilizează cuvintele cheie: Integer <listă variabile> - se declară variabilele din <lista variabile> de tip întreg Real <listă variabile> - se declară variabilele din <lista variabile> de tip real Character <listă variabile> - se declară variabilele din <lista variabile> de tip caracter Citeşte <listă variabile> - pentru citire (memorarea valorilor introduse de la tastatură pentru variabilele din listă variabile) Scrie <listă de ieşire> - pentru afişarea listei de ieşire. Lista de ieşire poate fi formată dintr-un text scris între ghilimele sau din identificatorii (numele) unor variabile, caz în care se vor afişa ultimele valori memorate în acestea. Atribuie variabilăexpresia - pentru operaţia de atribuire

Algoritmi – descriere – pseudocod Enunțuri nestandard – sunt precedate de caracterele „*)” şi descriu porţiuni ale algoritmului care, pentru moment, nu sunt finalizate. Enunţurile nestandard se descriu în limbaj natural. Exemplu: *) schimbă conţinutul variabilelor a şi b

Algoritmi – descriere – pseudocod Ordinea în care se realizează înlănţuirea paşilor unui algoritm defineşte aşa – numita structură de control a algoritmului. Structura decizională Dacă <condiţie> atunci <operaţie simplă>

Structura decizională - exemple

Structura repetitivă

Structura repetitivă - exemplu

Structura repetitivă cu variabilă contor

Structura repetitivă cu variabilă contor

Limbajul VBA – Visual Basic for Applications Inclus în aplicațiile Microsoft Office Permite crearea funcțiilor utilizator (UDF User-defined Functions) Crearea unor interfețe grafice care permit plasarea unor controale pe un formular utilizator Lucrul cu sistemul de operare prin API (Application Programming Interface)

Limbajul VBA – Visual Basic for Applications VBA este un limbaj orientat obiect, care se bazează pe trei noțiuni: obiecte, proprietăți și metode Obiectul exprimat prin substantive. Obiectele sunt grupate în colecții, grupate ierarhic Name, Range, Workbook, Worksheet Workbooks(“Venituri”).Sheets(“Firma1”).Range(“B1”)

Limbajul VBA – Visual Basic for Applications Proprietăți – atribute ale obiectelor (exprimate, de obicei, prin adjective) ActiveWorkbook, ActiveSheet, Application, Font, Value Sheet1.Cells(1,2) Metode – acțiuni ce se vor fi lansate în execuție (exprimate prin verbe) Activate, Add, Copy, Cut, Delete, Select Activeworkbook.Sheets.Add((“Sheet2”),,,xlChart)

Limbajul VBA – variabile Variabilă = locație de memorie al cărei conținut se modifică în funcție de logica programului și de structurile de control utilizate Numele unei variabile VBA poate fi stabilit respectând următoarele reguli: Numele unei variabile nu va conține spații, puncte sau unul dintre următoarele caractere: #, $, %, & ,! Numele variabilei poate conține litere sau cifre, însă primul caracter va fi, obligatoriu, literă. Numele unei variabile nu poate depăși 255 caractere

Limbajul VBA – variabile Un program scris în orice limbaj de programare va începe cu declararea tipului variabilei și inițializarea acestora Exemple: gata = False ‘ variabila este declarată de tip boolean și este inițializată cu valoarea False X=2 ‘ variabila a fost declarată de tip integer, double, single sau long și este inițializată cu valoarea 2

Limbajul VBA – variabile Exemple: Data_inceperii=#3/12/2016# ‘ variabila este declarată de tip dată calendaristică(date) x=x+1 ‘ variabila x este incrementată cu 1 (la ultima valoare stocată în variabila x se adună o unitate) Numeutilizator = “Pop Ion” ‘variabila numeutilizator este declarată de tip șir de caractere (string)

Limbajul VBA – declararea variabilelor Option Explicit – instrucțiune care forțează declararea tuturor variabilelor și afișează mesaje de eroare în caz contrar Dacă o variabilă nu este decarată și Option Explicit lipsește, variabila respectivă va fi tratată de către program ca fiind de tip variant Variant: valoarea stocată în variabila respectivă este tratată diferit, în funcție de operția realizată. Nu se pot declara mai multe variabile prin aceeași instrucțiune, Dim i, j, k as Integer

Limbajul VBA – vizibilitatea variabilelor Un registru de calcul Excel poate avea un număr de module de program VBA, iar un modul VBA poate conține proceduri de tip Sub sau Function Vizibilitatea variabilei determină modul în care modulele și procedurile pot utiliza variabila respectivă Vizibilitate Mod de declarare La nivel de procedură Cu instructiunile Dim sau Static în interiorul procedurii La nivel de modul Cu instrucțiunea Dim inserată înaintea declarării primei proceduri În toate procedurile din toate modulele Prin utilizarea instrucțiunii Public

Limbajul VBA – vizibilitatea variabilelor Atunci când o procedură își încheie execuția, toate variabilele sunt reinițializate Variabilele de tip Static își păstrează valoarea chiar și după încheierea execuției procedurii

Limbajul VBA – tipuri de date Tip de dată = se referă la modul în care un program stochează datele în memorie (ca valori întregi, reale sau șir de caractere)

Obiecte de tip Range Range(“A1:C5”) Range(“Preturi”) Worksheets(“Sheet1”).Range(“A1:C5”)

Obiecte de tip Range Workbooks(“Buget_lunar”).Worksheets(“Sheet1”).Range(“A1:C5”) Range(“3 : 3”) – randul al treilea din foaia de calcul curentă Range(“E : E”) – coloana E din foaia de calcul curentă Range(“A1:B8, D9:G16”)

Obiecte de tip Range – proprietatea Cells Proprietatea Cells va fi evaluată, iar VBA va returna un obiect de tip Range Proprietatea Cells are două argumente: rând și coloană Worksheets(“Sheet1”).Cells(2,3) – celula C2 Range(“A1:J20”).Value=100 Range(Cells(1,1), Cells(20,10)).Value=100

Obiecte de tip Range – proprietatea Value Proprietatea Value returnează valoarea conținută în celula specificată Msgbox Worksheets(“Sheet1”).Range(“A1”).Value

Obiecte de tip Range – proprietatea Value Poate modifica valorile din domeniul specificat de celule Worksheets(“Sheet1”).Range(“A1:C3”).Value=123 Value este proprietatea implicită a obiectului Range Worksheets(“Sheet1”).Range(“A1”).Value=75 are același efect cu Worksheets(“Sheet1”).Range(“A1”)=75

Obiecte de tip Range – proprietatea Text Proprietatea Text returnează un șir de caractere formatat ce reprezintă textul conținut într-o anumită celulă Rezultat obținut cu Value

Obiecte de tip Range – proprietatea Count, Column și Row Afișează numărul de celule din domeniul specificat MsgBox Worksheets("Sheet1").Range("A1:A10").Count Row afișează numărul rândului corespunzător celulei specificate MsgBox Worksheets("Sheet1").Range(“F7").Row Column afișează numărul coloanei corespunzător celulei specificate MsgBox Worksheets("Sheet1").Range(“F7:G7").Column

Funcții VBA Funcția realizează anumite calcule și returnează o singură valoare nume_funcție(argument1, argument2,…) Funcții incluse (built in) – utilizabile în VBA Funcții de foaie de calcul (Worksheet) – utilizabile în Excel Funcții utilizator

Funcții VBA

Funcții Worksheet în VBA Dacă funcția necesară nu face parte din cele built –in, se pot utiliza funcții Excel în programul scris în VBA Funcțiile Excel sunt accesibile prin obiectul WorksheetFunction inclus în obiectul Application (adică Excel, în acest caz) Orice funcție Excel poate fi utilizată în VBA, dacă este precedată de Application.WorksheetFunction

Funcții Worksheet în VBA Total=Application.WorksheetFunction.Sum(Range(“A1:A10”))

Funcții Worksheet în VBA

Funcţii utilizator