Ir para conteúdo
Fórum Script Brasil

Pesquisar na Comunidade

Mostrando resultados para as tags ''extensa''.

  • Pesquisar por Tags

    Digite tags separadas por vírgulas
  • Pesquisar por Autor

Tipo de Conteúdo


Fóruns

  • Programação & Desenvolvimento
    • ASP
    • PHP
    • .NET
    • Java
    • C, C++
    • Delphi, Kylix
    • Lógica de Programação
    • Mobile
    • Visual Basic
    • Outras Linguagens de Programação
  • WEB
    • HTML, XHTML, CSS
    • Ajax, JavaScript, XML, DOM
    • Editores
  • Arte & Design
    • Corel Draw
    • Fireworks
    • Flash & ActionScript
    • Photoshop
    • Outros Programas de Arte e Design
  • Sistemas Operacionais
    • Microsoft Windows
    • GNU/Linux
    • Outros Sistemas Operacionais
  • Softwares, Hardwares e Redes
    • Microsoft Office
    • Softwares Livres
    • Outros Softwares
    • Hardware
    • Redes
  • Banco de Dados
    • Access
    • MySQL
    • PostgreSQL
    • SQL Server
    • Demais Bancos
  • Segurança e Malwares
    • Segurança
    • Remoção De Malwares
  • Empregos
    • Vagas Efetivas
    • Vagas para Estágios
    • Oportunidades para Freelances
  • Negócios & Oportunidades
    • Classificados & Serviços
    • Eventos
  • Geral
    • Avaliações de Trabalhos
    • Links
    • Outros Assuntos
    • Entretenimento
  • Script Brasil
    • Novidades e Anúncios Script Brasil
    • Mercado Livre / Mercado Sócios
    • Sugestões e Críticas
    • Apresentações

Encontrar resultados em...

Encontrar resultados que...


Data de Criação

  • Início

    FIM


Data de Atualização

  • Início

    FIM


Filtrar pelo número de...

Data de Registro

  • Início

    FIM


Grupo


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Encontrado 1 registro

  1. Bom dia a todos! Estou tentado utilizar o VBA para realizar um cálculo relativamente extenso, que não se repete (não pode ser feito por loop) e que foi extraído do software matemático Maple(apenas a operação matemática em si, o resto do código eu que fiz). Como o Maple calcula nativamente isso, o resultado que ele devolve é correto, porém, quando eu tento realizar a conta pelo VBA ele me devolve um valor diferente. Tentei algumas alternativas para solucionar o problema porém não tive sorte. Dentre os testes eu: - tentei declarar todas as variáveis "t" das equações como Double. - tentei modificar a expressão no Maple e simplificá-la(mudar as expressões para "t"). - adicionei uma parte do código para conferir se as variáveis que ele utiliza para calcular estão corretas. Eu acredito que algo possa estar fazendo o VBA se perder no meio dessa conta, porém não sei o que. Se alguém puder olhar/ajudar/sugerir algo, ficarei eternamente grato! PS:Entendo um pouco de programação mas não sou programador, então já aviso, meu código pode parecer meio feioso. Tentei anexar o arquivo do VBA aqui mas não consegui. Segue o código abaixo: Private Sub C1() 'Calcula C1 e atribui a B1 da primeira planilha 'Declaração de Variáveis Dim OD As Double, thick As Double, ID As Double Dim E As Double Dim Ine As Double Dim Ei As Double Dim Lm As Double Dim ml As Double, mr As Double Dim rho As Double Dim jr As Double, jl As Double Dim sr As Double, sl As Double Dim Ar As Double Dim Mee As Double Dim re As Double Dim Le As Double Dim Fe As Double Dim beta As Double Dim omega As Double Dim Pi As Double Dim omega_omegan As Double Dim C1 As Double 'Atribuição dos valores 'Na realidade estes valores são extraidos de células do excel, 'para fins demosntrativos eu atribui os valores diretamente OD = 0.22 thick = 0.02 Lm = 6 E = 2 * 10 ^ (11) omega_omegan = 0.8 Pi = 4 * Atn(1) ID = OD - 2 * thick Ine = Pi * (OD ^ (4) - ID ^ (4)) / 64 Ei = E * Ine Ar = Pi * (OD ^ (2) - ID ^ (2)) / 4 rho = 7850 Le = 0.5 beta = 0.617843785182212 Mee = 5 re = 0.2 omega = (beta ^ 2) * (Ei / (rho * Ar)) ^ (1 / 2) Fe = Mee * re * ((omega_omegan * omega) / (2 * Pi)) ^ (2) mr = 200 ml = mr jr = 0 jl = 0 sr = 0 sl = 0 'Exibe os valores que estão sendo usados no cálculo Range("b13").Value = omega Range("b14").Value = beta Range("b15").Value = Ei Range("b16").Value = rho Range("b17").Value = Ar Range("b18").Value = Fe Range("b19").Value = Mee Range("b20").Value = ml Range("b21").Value = mr Range("b22").Value = jl Range("b23").Value = jr Range("b24").Value = sl Range("b25").Value = sr Range("b26").Value = re Range("b27").Value = Le Range("b28").Value = OD Range("b29").Value = ID Range("b30").Value = thick 'Realiza o cálculo de C1 efetivamente t3 = beta * Lm / 2# t4 = WorksheetFunction.Sinh(t3) t5 = sr - Le t7 = sr * t5 * mr t8 = t7 + jr t11 = Sin(t3) t12 = ml * t11 t13 = WorksheetFunction.Cosh(t3) t17 = Cos(t3) t19 = t4 * t4 t23 = beta * beta t24 = t23 * beta t25 = t23 * t23 t26 = t25 * t24 t30 = mr * t5 t31 = t13 * t13 t35 = sl * sl t36 = ml * t35 t38 = (t36 + jl) * rho t48 = t25 * t23 t50 = sl * t5 t51 = sl + sr t54 = sl * jr t55 = jl * Le t58 = jl * mr t59 = t58 * t5 t62 = rho * t17 t63 = t62 * t31 t77 = t5 * t51 * mr t78 = t77 + jr t83 = t62 * t19 t86 = t25 * beta t92 = Ar * Le t95 = jl / 2# t107 = Ar * rho t112 = sl + Le t114 = sl * t112 * ml t116 = Ar * Ar t118 = rho * rho t119 = t118 * t17 t125 = jr / 2# t129 = ml * mr t146 = ml * t112 t149 = sl * ml t159 = t116 * t118 t172 = t116 * Ar t173 = t118 * rho t174 = t172 * t173 t192 = jl * jr t193 = t17 * t17 t204 = t25 * t25 t206 = sr * sr t209 = -jl * t206 - jr * t35 t213 = t192 * mr t214 = (t209 * mr - t192) * ml - t213 t216 = t214 * t11 * Ar t226 = t107 * t13 t232 = t4 * t11 t233 = mr * t206 t255 = ((sr * t51 * mr + jr) * sl * ml + t58 * sr) * Ar * rho t257 = jl + jr t258 = t129 * t257 t259 = -2# * t255 - t258 t261 = t259 * t11 * Ar t272 = t51 * t51 t273 = t272 * mr t282 = 2# * ((t273 + t95 + jr) * ml + (jl + t125) * mr) * t116 * t118 * t193 t305 = Ar * (t36 + t233 + jl + jr) * rho + 2# * t129 * t51 t307 = t305 * t116 * t118 t308 = t11 * t17 t309 = t308 * t31 t311 = t305 * Ar t320 = t308 * t19 t335 = ml + mr t336 = t174 * t335 t349 = t116 * t116 t350 = t118 * t118 t351 = t349 * t350 C1 = -Fe * Ar * ((t8 * jl * ml * t17 * t19 - t4 * t8 * jl * t12 * t13) * t26 + (-t11 * jl * ml * t30 * t31 - t4 * (-2# * t8 * Ar * t38 - jl * ml * t30) * t17 * t13) * t48 + (-((-t50 * t51 * mr - t54 + t55) * ml - t59) * Ar * t63 + 2# * t4 * ml * Ar * (sl * sr * t30 + t55 / 2# + t54) * rho * t11 * t13 + (sl * t78 * ml + t59) * Ar * t83) * t86 + (t12 * Ar * t78 * rho * t31 - 2# * t4 * (t92 * t38 - ml * (t50 * mr - t95)) * Ar * t62 * t13 + t11 * (t77 + jl + jr) * ml * t107 * t19) * t25 + (-(t114 + t7 + jl + jr) * t116 * t119 * t31 - 2# * t4 * ((Le * ml * sl - t7 / 2# - t125) * Ar * rho - t129 * t5) * Ar * rho * t11 * t13 - (t114 + jl) * t116 * t119 * t19) * t24 + (-t11 * t116 * t118 * t146 * t31 - 2# * t4 * (t149 + t30 / 2#) * t116 * t119 * t13 - t11 * (t146 - t30) * t159 * t19) * t23 + (-t4 * t116 * t118 * (t92 * rho + 2# * ml) * t11 * _ t13 + t174 * Le * t17 * t19) * beta + t172 * t17 * t13 * t4 * t173 - t172 * t11 * t31 * t173) * rho / t24 / Ei / (((t192 * t129 * t193 - t192 * t129) * t31 + t192 * ml * mr * t193 * t19) * t204 + (-t216 * t63 - 2# * t4 * (t214 * t193 + (-t209 * mr / 2# + t192 / 2#) * ml + t213 / 2#) * t226 - t216 * t83) * t26 - 4# * t232 * (-Ar * (t233 + jr) * t38 - t129 * (jl * sr + t54)) * t17 * t107 * t13 * t48 + (-t261 * t63 - 2# * t4 * (-t259 * t193 - t255 - t258 / 2#) * t226 - t261 * t83) * t86 + ((-t282 + ((t273 + jr) * ml + t58) * t116 * t118) * t31 + (-t282 + ((t273 + jl + jr) * ml + mr * t257) * t116 * t118) * t19) * t25 + (-t307 * t309 - 2# * t4 * (t311 * rho * t193 - t311 * rho / 2#) * t226 - t307 * t320) * t24 - 4# * t232 * (Ar * (mr * sr + t149) * rho + t129) * t116 * t119 * t13 * t23 + (-t336 * t309 - 2# * t4 * (-t159 * t335 * t193 + t159 * t335 / 2#) * t226 - t336 * t320) * beta + (t351 * t193 - t351) * t31 + t349 * t193 * t19 * t350) / 2# 'Atribui C1 a célula B1 da primeira planilha Worksheets(1).Range("b1") = C1 End Sub
×
×
  • Criar Novo...