Bom dia a todos
e ai galera venho mais uma vez pedir a ajuda das feras do access para me ajudar a resolver esse problema.
Eu sei fazer o calculo do digito do isbn, mas eu nao estou conseguindo fazer isso no vba pois a variavel estora. Ja tentei declarar como double e long.
Que tipo de variavel eu tenho que declarar pra eu poder fazer o calculo do digito e acrescenta-lo no campo? exemplo: o campo contém esse valor "978853611176" e eu tranformo em "9788536111766",ou seja eu adiciono o digito no valor contido no campo. Essa parte a adicionar deixa comigo, por favor so me ajudem a fazer os calculos sem a variavel estourar.
por equanto eu só tentei fazer a primeira parte do calculo, que é soma dos digitos multiplicados por 3 e por 1 respectivamente. Como demonstra o codigo abaixo:
Private Sub Dig_ISBN_Click()
'Declaracao de variaveis
Dim i As Integer
Dim soma As Double
Dim dig As Double
Dim aux As Double
Dim ISBN As Double
'Inicializacao das variaveis
i = 0
soma = 0
ISBN = Val(Me.ISBN)
aux = ISBN
'Laço Retorna a soma de cada digito multiplicado por 3 e por 1 respectivamente
Do While i < 6
dig = aux Mod 10
aux = Fix(aux / 10)
soma = soma + (dig * 3)
dig = aux Mod 10
aux = Fix(aux / 10)
soma = soma + (dig * 1)
Loop
'Imprime soma
MsgBox soma
Grato
e ai galera venho mais uma vez pedir a ajuda das feras do access para me ajudar a resolver esse problema.
Eu sei fazer o calculo do digito do isbn, mas eu nao estou conseguindo fazer isso no vba pois a variavel estora. Ja tentei declarar como double e long.
Que tipo de variavel eu tenho que declarar pra eu poder fazer o calculo do digito e acrescenta-lo no campo? exemplo: o campo contém esse valor "978853611176" e eu tranformo em "9788536111766",ou seja eu adiciono o digito no valor contido no campo. Essa parte a adicionar deixa comigo, por favor so me ajudem a fazer os calculos sem a variavel estourar.
por equanto eu só tentei fazer a primeira parte do calculo, que é soma dos digitos multiplicados por 3 e por 1 respectivamente. Como demonstra o codigo abaixo:
Private Sub Dig_ISBN_Click()
'Declaracao de variaveis
Dim i As Integer
Dim soma As Double
Dim dig As Double
Dim aux As Double
Dim ISBN As Double
'Inicializacao das variaveis
i = 0
soma = 0
ISBN = Val(Me.ISBN)
aux = ISBN
'Laço Retorna a soma de cada digito multiplicado por 3 e por 1 respectivamente
Do While i < 6
dig = aux Mod 10
aux = Fix(aux / 10)
soma = soma + (dig * 3)
dig = aux Mod 10
aux = Fix(aux / 10)
soma = soma + (dig * 1)
Loop
'Imprime soma
MsgBox soma
Grato