Ir para conteúdo
Fórum Script Brasil

LeoAmorim

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Tudo que LeoAmorim postou

  1. Bom primeiramente queria já dar meus parabéns ao site que está ajudando muito nessa minha iniciação ! Começando: Estou no primeiro módulo de um curso técnico de informática, portanto não sei muito de programação, e a nota de AC(Aplicativos Computacionais) desse primeiro módulo é fazer um projeto em Excel que utiliza VBA. Não vou explicar o problema todo senão acho que irá ficar cansativo e acho que não vem ao caso, resumindo eu preciso que uma variável minha(no caso abaixo "b") inicie na data 01/01(primeiro de janeiro) do ano que a pessoa ta usando o programa. Meu primeiro problema: Declarei a váriavel e tentei atribuir a data a ela: Dim b as Date b = 1 / 1 / 2009 mas desse jeito o sistema pega um horário, e fica assim na váriavel b quando colocado mouse por cima b=00:00:43 então eu pensei, bom vou ter que fazer de um jeito mais dificil... Vou pegar a data do sistema, usar a função Mid e ir reduzindo a data até ser 1 e 1 o mid do dia e do mês respectivamente, só que nesse código que eu fiz, eu necessito que a função MID pegue a "/" pois o local é diferente dependendo da data ( Exemplo:"1/2/2009" e "10/10/2009"). E a função Mid quando deveria retornar "/" , ela retorna 0, vou postar o código: Dim ajuda(1 To 8) As String Dim posicao As Integer Dim k, k2 As String Dim f As String Dim b As Date Dim x, z As Integer b = Date Do While k <> "1" Or k2 <> "1" z = 1 x = 1 Do While f <> "/" f = Val(Mid$(b, x, 1)) If f <> "/" Then ajuda(z) = f z = z + 1 End If If f = "/" Then posicao = x teste = x End If x = x + 1 Loop posicao = posicao + 1 Do While g <> "/" g = Val(Mid$(b, posicao, 1)) If g <> "/" Then ajuda(z) = g z = z + 1 End If If g = "/" Then teste2 = posicao End If posicao = posicao + 1 Loop If teste = 3 Then k = ajuda(1) & ajuda(2) End If If teste = 2 Then k = ajuda(1) End If If teste2 = 4 Then k2 = ajuda(2) End If If teste2 = 5 And teste = 2 Then k2 = ajuda(2) & ajuda(3) End If If teste2 = 5 And teste = 3 Then k2 = ajuda(3) End If If teste2 = 6 Then k2 = ajuda(5) End If b = b - 1 Loop Obs: Sou iniciante em programação e em vba. E esse código ta dentro de uma Sub que tem mais códigos que eu acho que não interessariam em nada, pois esse é o primeiro código e o erro acontece no "ajuda(z)=f" porque a função Mid não ta retornando "/" e sim 0, dai nunca termina o "Do While". Bom, alguma dúvida sobre o código pergunte que eu venho esclarecer.... se puderem me ajudar arrumando meu código ou dando uma sugestão de como eu resolvo esse problema, ficaria grato. Abraços.
×
×
  • Criar Novo...