MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    Problemas com Mid

    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    Problemas com Mid Empty Problemas com Mid

    Mensagem  good guy 18/9/2013, 23:03

    Pessoal,

    Estou com um problema em um determinada caixa de texto que não quer apresentar um determinado número mediante uma interpretação de uma função MID. Já chequei tudo que você possa imaginar: nome da caixa, caixa desacoplada, etc

    Public Function Fatoracao()
    On Error Resume Next
    Dim s As Integer
    Dim s1 As Integer
    Dim sValor As Integer

    s = Len(valor1)

    s1 = valor1

    V1 = s1


    Select Case Len(V1)
    .................

    Case Is = 2

    Dim X As Integer

    X = Mid(V1, 2, 2)

    If X = 9 Then
    If Mid(V1, 1, 2) = 49 Then
       'Esta NÃO funciona
    ValorMMC = 7                    'O número que aparece nesta caixa é sempre 49. Por que será?
    End If
    End If

    If X = 1 Then
    If Mid(V1, 1, 2) = 21 Then    'Esta funciona beleza
    ValorMMC = 3                      'O número que aparece nesta caixa é 3. OK
    End If
    If Mid(V1, 1, 2) = 81 Then  'Esta funciona beleza
    ValorMMC = 3                    'O número que aparece nesta caixa é 3. OK
    End If
    End If
    If X = 2 Then
    ValorMMC = X
    End If
    If X = 3 Then
    If Mid(V1, 1, 2) = 63 Then  'Esta funciona beleza
    ValorMMC = 3                    'O número que aparece nesta caixa é 3. OK
    End If
    End If
    good guy
    good guy
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1304
    Registrado : 05/02/2010

    Problemas com Mid Empty Problemas com Mid

    Mensagem  good guy 19/9/2013, 14:46

    Pessoal,

    Já descobri o problema. Não havia nada errado no código, o problema é que na diligência de aperfeiçoar o código ao máximo, coloquei uma linha que entrava em conflito com a função Mid quando se referia ao valor 49 ou números terminados em 9 ou múltiplos de 7. Dentro da função acima havia as seguintes linhas de código:


    Linha de código 1
    '*****************************************************************

    If V1 Mod 2 = 0 Then
    ValorMMC = 2
    ElseIf V1 Mod 3 = 0 Then
    If V1 = 21 Then
    ValorMMC = 3
    End If
    ElseIf V1 Mod 5 = 0 Then
    ValorMMC = 5
    Else
    ValorMMC = V1

    End If

    Linha de código 2
    '**********************************************
    sValor = ValorMMC

    Select Case sValor

    Case Is = 0

    If s1 Mod 8 = 0 Then
    ValorMMC = 8
    End If

    If s1 Mod 5 = 0 Then
    ValorMMC = 5

    End If

    If s1 Mod 3 = 0 Then
    ValorMMC = 3

    End If

    If s1 Mod 7 = 0 Then
    ValorMMC = 7

    End If


    If s1 Mod 2 = 0 Then
    ValorMMC = 2
    Else
    Exit Function
    End If


    Não havia a linha em destaque em itálico. A princípio ele fatorava o número 49, mas ao seguir o código mais abaixo, a referência ao valor do campo ValorMMC pela variável sValor, procurava outro valor para o mesmo campo, não encontrando saía da função ou deixava o campo ValorMMC com o valor inicial sem fatorar. Eliminei as duas sequências de código e a função não deu mais problemas. Obrigado a todos !!!

      Data/hora atual: 28/3/2024, 10:00