Visual Basic

Embed Size (px)

DESCRIPTION

visual basic

Citation preview

  • NOES DE VISUAL BASIC APLICADO AO EXCEL

    - HIDROLOGIA SUBTERRNEA

    NOTAS DE AULA

    Prof. Jos Eduardo Alamy Filho

  • 1 - INTRODUO

    VBA = Visual Basic for Applications

    Funo da programao em Engenharia: soluo de problemas mais complexos, os quais normalmente demandam clculos repetitivos.

    1.1 PRINCIPAIS OBJETOS DO EXCEL

    PLANILHA

    CLULAS

    INTERVALO de CLULAS

    GRFICO

    sheets(NOME)

    cells(linha,coluna)

    range(cells(1,1),cells(5,2))

    chartobjects(NOME)

    maneira moderna de fazer clculos

    aplicado aos objetos do Excel

  • 1.2 PRINCIPAIS AES sobre UM OBJETO

    OBJETO.ao SUBSTANTIVO.verbo

    EX:

    Ativando uma planilha sheets(plan1).activate

    Selecionando uma clula cells(2,3).select

    Limpando o contedo de uma clula

    cells(1,4).clearcontents

    1.3 CARACTERIZANDO UM OBJETO

    EX:

    Cor da fonte cells(5,2).font.colorindex = 5

    Preenchimento da clula cells(2,3).interior.colorindex = 7

    Negrito cells(1,4).font.bold = true

    No itlico cells(1,2).font.italic = false

    OBJETO.caracterstica SUBSTANTIVO.adjetivo

    mtodo

    propriedade

  • 1.4 CDIGO (ou procedimento)

    PLANILHA

    CDIGO VISUAL BASIC

    Seqncia estruturada de operaes

    MDULO

    PLANILHA

    leitura x =cells(i,j)

    sada cells(9,2)= C

    roteiro de soluo e clculos

  • 1.4.1 - Acessando o editor do Visual Basic pela planilha Excel:

    Ferramentas Macro Editor do Visual Basic

    Inserir Mdulo

    O mdulo o editor de texto do Visual Basic, ou seja, o local onde a seqncia de clculo (algoritmo) escrita.

    1.4.2 - Gravando Macros:

    Ferramentas Macro Gravar nova Macro

    Executar operaes na planilha

    Parar gravao

  • 1.4.3 Visualizando o cdigo de Macros gravadas:

    Ferramentas Macro Editor do Visual Basic

    Buscar, no Project Explorer, o mdulo onde foi escrita a macro

    1.4.4 Criando botes na planilha: para rodar um cdigo a partir do clique em um boto

    Exibir Barra de ferramentas Formulrios

    Inserir um boto na planilha e atribuir uma Macro a este boto

  • 2 PRINCIPAIS ESTRUTURAS DO VISUAL BASIC

    2.1 ESTRUTURAS ITERATIVAS (laos p/ clculos repetitivos)

    While (condio) seqncia de operaes Wend

    EX: tempo = 0 While (tempo < 10) V = frmula tempo = tempo + 1 Wend

    For i = 1 to N seqncia de operaes Next

    EX: N= 10 For k = 1 to N V = frmula Next

    Quando o nmero de repeties j previamente conhecido e igual a N.

  • Do seqncia de operaes Loop until (condio atingida) ou Loop while(condio no atingida)

    EX: tempo = 0 Do V = frmula tempo = tempo + 1 Loop until (tempo > 10) ou Loop while (tempo 10) then V = frmula End if

    Quando h apenas uma condio

    Quando o nmero de repeties no previamente conhecido, pois depende dos clculos que ocorrem dentro do lao.

  • If (condio) then seqncia 1 de operaes else seqncia 2 de operaes End if

    EX: If (tempo > 20) then V = frmula else V = 0 End if

    Quando h apenas uma condio, porm duas opes

    If (condio 1) then seqncia 1 de operaes elseif (condio 2) then seqncia 2 de operaes else seqncia 3 de operaes End if

    EX: If (tempo > 20) then V = frmula elseif (tempo=10) then V = 2 else V = 0 End if

    Quando h vrias condies e tambm vrias opes

  • 2.3 ESTRUTURAS de ARMAZENAMENTO (p/ guardar resultados que sero utilizados em outros momentos do clculo. Essas estruturas atuam como se fossem armrios com um nmero pr-estipulado de gavetas)

    VETORES (1 dimenso) 2.5 10.6 20.12 0.59

    1 2 3 4 MATRIZES (2 ou 3 dimenses) 2.5 10.6 20.12 0.59

    1 2 3 4

    3.5 17.7 20.1 0.09 56.9 11.7 2.0 0.5

    12

    3

    Obs: Vetores e matrizes devem ser declarados no incio do cdigo, de forma que o seu tamanho mximo (quantidade mxima de espaos) seja especificado.

    EX: Dim A(10), B(5), C(20,35) as Double Dim U(10), V(5,6,7), W(20,35) as Integer

    Tipos de variveis: Double: nmero real de dupla preciso (gasta 8 bytes) -1,79769....10+308 at -4,94066....10-324 4,94066....10-324 at 1,79769....10+308

    Single: nmero real de preciso simples (gasta 4 bytes) -3,4028....10+38 at -1,40129....10-45 1,40129....10-45 at 3,4028....10+38

    Variant: qualquer varivel numrica, inclusive as no declaradas (gasta 32 bytes)

  • Tipos de variveis (cont.): Integer: nmero inteiro (gasta 2 bytes) -32768 at 32767

    Long: nmero inteiro longo (gasta 4 bytes) -2 147 483 648 at 2 147 483 647

    Byte: nmero inteiro (gasta 1 bytes) 0 at 255

    2.4 COMENTRIOS (frases que o programa no l espcie de ttulos mas que auxiliam o programador no entendimento do roteiro de solues)

    EX: If (tempo > 20) then Concentrao = frmula elseif (tempo=10) then Concentrao = 2 else as concentraes so nulas durante os primeiros 10 segundos Concentrao = 0 End if

    No Visual Basic, os comentrios ficam em VERDE e so precedidos por apstrofos.

  • 3 CRIANDO AS PRPRIAS FUNES

    Utilizando o Visual Basic, possvel criar funes genricas que no existem na biblioteca do Excel.

    Function nome (argumento 1, argumento 2, ...) nome = funo dependente dos argumentos End function

    Obs: As funes deve ser escritas fora da SUB.

    EX: Function A(x,y) A = 4*x^2+y^(2/3)*exp(x*y) End function