A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Trabalho Computacional Mecânica de Fluidos Ambiental aula 2 Dúvidas: Página: https://fenix.ist.utl.pt/homepage/ist146730/mecanica-

Apresentações semelhantes


Apresentação em tema: "Trabalho Computacional Mecânica de Fluidos Ambiental aula 2 Dúvidas: Página: https://fenix.ist.utl.pt/homepage/ist146730/mecanica-"— Transcrição da apresentação:

1 Trabalho Computacional Mecânica de Fluidos Ambiental aula 2 Dúvidas: guillaume.riflet@ist.utl.pt Ext:3430guillaume.riflet@ist.utl.pt Página: https://fenix.ist.utl.pt/homepage/ist146730/mecanica- dos-fluidos-ambiental-2011-2012 (work in progress...)https://fenix.ist.utl.pt/homepage/ist146730/mecanica- dos-fluidos-ambiental-2011-2012 Guillaume Riflet

2 Resumo aula 1 subrotinas, funções, argumentos, variáveis, tipos de variáveis, debug. Alcance (Public, Private) [arrays] [ciclos while e for], https://fenix.ist.utl.pt/homepage/ist146730/mecanica-dos- fluidos-ambiental

3 Exercícios aula 1 Criem a função de um argumento de tipo double que retorne 3x*x – 2. Criem uma subrotina que teste a função para x=4 e x=25, escrevendo o resultado numa folha de excel. Concebam um ciclo for numa subrotina que escreva numa folha de excel os resultados de 3x*x*x + 4 para todos os x que pertençam ao intervalo [-30, 50] com incrementos 2 em 2. Caso não tenham feito, repitam o exercício anterior usando um array. Repitam o exercício anterior, mas desta vez a função é 3x*x*x + 4 se o resultado for positivo e 0 (zero) caso contrário (usem um if). Gravem a macro dum gráfico com os resultados do exercício anterior (com x nas abscissas e os valores da função nas ordenadas). Vejam o código que resultou da gravação da vossa macro.

4 Conteúdo programado aula 2 condições (if), Passagem de argumentos por valor ou por referência Interface Excel-VBA, Tipos eventos, userforms, Gravação de macros, Alguns objectos nativos de VBA para excel

5 Exemplo VII - if

6 Estruturas de decisão If...Then If anyDate < Now Then anyDate = Now If anyDate < Now Then anyDate = Now End If If...Then...Else If Index = 0 Then Call Sub1 Else If Index = 1 Then Call Sub2 Else If Index = 2 Then Call Sub3 Else Call Sub3 End If Select Case Select Case Index Case 0 Call Sub1 Case 1 Call Sub2 Case 2 Call Sub3 Case 3 Call Sub4 Case Else Call Sub5 End Select

7 Passagem de argumentos Sub Main() Dim a As Integer a = 10 Call TestVal(a) Call TestRef(a) End Sub Sub TestVal (ByVal b As Integer) b = b + 1 End Sub Sub TestRef (ByRef b As Integer) b = b + 1 End Sub b = 11 a = 10 b = 11 a = 11

8 User defined type Private Type SystemInfo CPU As Variant Memory As Long VideoColors As Integer Cost As Currency PurchaseDate As Variant End Type Dim MySystem As SystemInfo, YourSystem As SystemInfo MySystem.CPU = "486“ YourSystem.PurchaseDate = #1/1/92# SystemInfo Memory CPU VideoColors Cost PurchaseDate

9 Exemplo VIII - Type

10 Exemplo IX - Userforms

11

12

13 Gravação de Macros Botão de “record”

14 Glossário II Macro de Excel: uma série de instruções feitas pelo Excel (e não pelo utilizador) Objectos: estructuras programáticas. Ex: os objectos de VBA para Excel (Workbooks, sheets, cells, range, charts, drawings,...). Propriedades: são os campos que compõem os objectos. Pensem no verbo “ser”. Métodos: são as rotinas dos objectos. Pensem no verbo “fazer”. Funções: são as funções dos objectos. Pensem no verbo “calcular”. Eventos: VBA é uma linguagem orientada por eventos. Controlos: Permite pôr botões e criar eventos. Userforms: Permite gerar formulário que os utilizadores podem usar para entrar dados dentro do programa. IDE: Integrated Development Environment.

15 Configurações regionais Atenção no que toca à linguagem nativa do office. SEN (português) ou SIN (inglês). Atenção às definições de separadores de casas decimais (3.14 ou 3,14) e de formatos de data (13/05/1980 ou 1980-05-13 ou...).


Carregar ppt "Trabalho Computacional Mecânica de Fluidos Ambiental aula 2 Dúvidas: Página: https://fenix.ist.utl.pt/homepage/ist146730/mecanica-"

Apresentações semelhantes


Anúncios Google