La siempre fastidiosa comprobacion o averiguacion del NIF y las que no tenemos ni idea de VBA (que Dios castigue)

07/07/2003 - 20:46 por Laura McNee | Informe spam
He encontrado en Google una rutina en VBA enviada por Sendo hace unos meses.
Algo más o menos así:

Function LetraDNI( lDNI as long) as String
Dm sLetras as string
sLetras = "TRWAGMYFPDXBNJZSQVHLCKE"
LetraDNI = Mid(sLetras, (lDNI Mod 23) + 1, 1)
end function

Una, que es cotilla por naturaleza, ha observado esta mañana en mi banco
(sí, no os lo he dicho, pero yo soy JPMorgan disfrazao de lagarterana) que
el chico (macizo todo él) que me atendió, introdujo el número de mi DNI en
una casilla en blanco (un txtBox), que traía al lado un botón_de_comando en
que decía NIF, y al pulsarlo apareció, tomáticamente, junto al número del
DNI y en la misma casilla, la letra correspondiente. Inmediatamente apareció
mi nombre, mi domicilio, mi talla de sujet... digo mi cuenta, mis tarjetas,
mi... en fin. El macizo me dijo que todo funcionaba bajo Oracle, pero yo
creo que a alguien se le habría ocurrido hacer un algo así en Access.

¿Me equivoco?
:-)'

Preguntas similare

Leer las respuestas

#6 Eva Etxebeste
08/07/2003 - 11:48 | Informe spam
Espera, esperaaaaaaaaaaa

Al módulo estándar, ¿le has llamado "LetraDNI"? Si es así, la cosa va mal.
El nombre del módulo no puede coincidir con el nombre de ninguna función ni
sub.

Un saludo
Eva Etxebeste
[MS MVP]
"Laura McNee" escribió en el mensaje
news:bee3r2$449od$
Pos nada, se me sigue parando en "letraDNI" diciendo que se esperaba una
variable o procedimiento, pero no un módulo.
:-(



"Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
news:
> Perdóneme usté, que he metido la gamba
>
> La función LetraDNI espera un valor de tipo Long, y yo le estoy pasando


un
> string. Cambia la línea por: strDNI = strDNI & letraDNI(CLng(strDNI))
>
> Un saludo
> Eva Etxebeste
> [MS MVP]
>
> "Laura McNee" escribió en el mensaje
> news:bee1s1$44q4c$
> > Gracias Eva. He copiado el evento tal que así, pero en la línea que te
> > señalo con asteriscos me dice que se esperaba una variable y no un
módulo.
> > ¿En qué fallo ahora?
> >
> > Private Sub Comando32_Click()
> > ' Creo una variable de trabajo
> > Dim strDNI As String
> >
> > ' Le asigno el contenido del txtBox donde el usuario introduce el
DNI
> y
> > _
> > le quito blancos
> > strDNI = Trim(Me.BuscaCIF)
> >
> > ' Si el último carácter no es un número, lo elimino
> > If Not IsNumeric(Right(strDNI, 1)) Then
> > strDNI = Left(strDNI, Len(strDNI) - 1)
> > End If
> >
> > ' Calculo la letra correcta y la concateno
> > ***** strDNI = strDNI & letraDNI(strDNI)
> >
> > ' Asigno a mi textbox la cadena calculada
> > Me.BuscaCIF = strDNI
> >
> > End Sub
> >
> >
> >
> > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
> > news:
> > > Hola Laura
> > >
> > > A ver si consigo explicarme más o menos bien:
> >
> >
>
>


Respuesta Responder a este mensaje
#7 Laura McNee
08/07/2003 - 12:12 | Informe spam
Yayayaaaaaaaaaaaaaa funciona.
Lo he puesto en dos formularios y en uno da problemas por el lío de
controles que tengo allí, pero en el otro va de la muelte.
:-)))

Gracias Eva wapa.

"Laura McNee" escribió en el mensaje
news:bee52m$43oge$
Jiji, uich, perdón. Ya se lo he cambiado, pero ahora no hace nada (tampoco
da error). ¿Crees que debo dimitir de ésto?


"Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
news:
> Espera, esperaaaaaaaaaaa
>
> Al módulo estándar, ¿le has llamado "LetraDNI"? Si es así, la cosa va


mal.
> El nombre del módulo no puede coincidir con el nombre de ninguna función
ni
> sub.
>
> Un saludo
> Eva Etxebeste
> [MS MVP]
> "Laura McNee" escribió en el mensaje
> news:bee3r2$449od$
> > Pos nada, se me sigue parando en "letraDNI" diciendo que se esperaba


una
> > variable o procedimiento, pero no un módulo.
> > :-(
> >
> >
> >
> > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
> > news:
> > > Perdóneme usté, que he metido la gamba
> > >
> > > La función LetraDNI espera un valor de tipo Long, y yo le estoy
pasando
> un
> > > string. Cambia la línea por: strDNI = strDNI &


letraDNI(CLng(strDNI))
> > >
> > > Un saludo
> > > Eva Etxebeste
> > > [MS MVP]
> > >
> > > "Laura McNee" escribió en el mensaje
> > > news:bee1s1$44q4c$
> > > > Gracias Eva. He copiado el evento tal que así, pero en la línea


que
te
> > > > señalo con asteriscos me dice que se esperaba una variable y no un
> > módulo.
> > > > ¿En qué fallo ahora?
> > > >
> > > > Private Sub Comando32_Click()
> > > > ' Creo una variable de trabajo
> > > > Dim strDNI As String
> > > >
> > > > ' Le asigno el contenido del txtBox donde el usuario introduce
el
> > DNI
> > > y
> > > > _
> > > > le quito blancos
> > > > strDNI = Trim(Me.BuscaCIF)
> > > >
> > > > ' Si el último carácter no es un número, lo elimino
> > > > If Not IsNumeric(Right(strDNI, 1)) Then
> > > > strDNI = Left(strDNI, Len(strDNI) - 1)
> > > > End If
> > > >
> > > > ' Calculo la letra correcta y la concateno
> > > > ***** strDNI = strDNI & letraDNI(strDNI)
> > > >
> > > > ' Asigno a mi textbox la cadena calculada
> > > > Me.BuscaCIF = strDNI
> > > >
> > > > End Sub
> > > >
> > > >
> > > >
> > > > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el


mensaje
> > > > news:
> > > > > Hola Laura
> > > > >
> > > > > A ver si consigo explicarme más o menos bien:
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#8 Eva Etxebeste
08/07/2003 - 12:14 | Informe spam
De nada gonita, pero el macizo a medias, eh? ;))))
Eva Etxebeste
[MS MVP]
"Laura McNee" escribió en el mensaje
news:bee5g9$457eb$
Yayayaaaaaaaaaaaaaa funciona.
Lo he puesto en dos formularios y en uno da problemas por el lío de
controles que tengo allí, pero en el otro va de la muelte.
:-)))

Gracias Eva wapa.

"Laura McNee" escribió en el mensaje
news:bee52m$43oge$
> Jiji, uich, perdón. Ya se lo he cambiado, pero ahora no hace nada


(tampoco
> da error). ¿Crees que debo dimitir de ésto?
>
>
> "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
> news:
> > Espera, esperaaaaaaaaaaa
> >
> > Al módulo estándar, ¿le has llamado "LetraDNI"? Si es así, la cosa va
mal.
> > El nombre del módulo no puede coincidir con el nombre de ninguna


función
> ni
> > sub.
> >
> > Un saludo
> > Eva Etxebeste
> > [MS MVP]
> > "Laura McNee" escribió en el mensaje
> > news:bee3r2$449od$
> > > Pos nada, se me sigue parando en "letraDNI" diciendo que se esperaba
una
> > > variable o procedimiento, pero no un módulo.
> > > :-(
> > >
> > >
> > >
> > > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
> > > news:
> > > > Perdóneme usté, que he metido la gamba
> > > >
> > > > La función LetraDNI espera un valor de tipo Long, y yo le estoy
> pasando
> > un
> > > > string. Cambia la línea por: strDNI = strDNI &
letraDNI(CLng(strDNI))
> > > >
> > > > Un saludo
> > > > Eva Etxebeste
> > > > [MS MVP]
> > > >
> > > > "Laura McNee" escribió en el mensaje
> > > > news:bee1s1$44q4c$
> > > > > Gracias Eva. He copiado el evento tal que así, pero en la línea
que
> te
> > > > > señalo con asteriscos me dice que se esperaba una variable y no


un
> > > módulo.
> > > > > ¿En qué fallo ahora?
> > > > >
> > > > > Private Sub Comando32_Click()
> > > > > ' Creo una variable de trabajo
> > > > > Dim strDNI As String
> > > > >
> > > > > ' Le asigno el contenido del txtBox donde el usuario


introduce
> el
> > > DNI
> > > > y
> > > > > _
> > > > > le quito blancos
> > > > > strDNI = Trim(Me.BuscaCIF)
> > > > >
> > > > > ' Si el último carácter no es un número, lo elimino
> > > > > If Not IsNumeric(Right(strDNI, 1)) Then
> > > > > strDNI = Left(strDNI, Len(strDNI) - 1)
> > > > > End If
> > > > >
> > > > > ' Calculo la letra correcta y la concateno
> > > > > ***** strDNI = strDNI & letraDNI(strDNI)
> > > > >
> > > > > ' Asigno a mi textbox la cadena calculada
> > > > > Me.BuscaCIF = strDNI
> > > > >
> > > > > End Sub
> > > > >
> > > > >
> > > > >
> > > > > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el
mensaje
> > > > > news:
> > > > > > Hola Laura
> > > > > >
> > > > > > A ver si consigo explicarme más o menos bien:
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#9 Laura McNee
08/07/2003 - 13:01 | Informe spam
Uy, me parece que va de duro por el mundo. Con la necesidá que hay.
:-DDD


"Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
news:O9F%
De nada gonita, pero el macizo a medias, eh? ;))))
Eva Etxebeste
[MS MVP]
"Laura McNee" escribió en el mensaje
news:bee5g9$457eb$
> Yayayaaaaaaaaaaaaaa funciona.
> Lo he puesto en dos formularios y en uno da problemas por el lío de
> controles que tengo allí, pero en el otro va de la muelte.
> :-)))
>
> Gracias Eva wapa.
>
> "Laura McNee" escribió en el mensaje
> news:bee52m$43oge$
> > Jiji, uich, perdón. Ya se lo he cambiado, pero ahora no hace nada
(tampoco
> > da error). ¿Crees que debo dimitir de ésto?
> >
> >
> > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
> > news:
> > > Espera, esperaaaaaaaaaaa
> > >
> > > Al módulo estándar, ¿le has llamado "LetraDNI"? Si es así, la cosa


va
> mal.
> > > El nombre del módulo no puede coincidir con el nombre de ninguna
función
> > ni
> > > sub.
> > >
> > > Un saludo
> > > Eva Etxebeste
> > > [MS MVP]
> > > "Laura McNee" escribió en el mensaje
> > > news:bee3r2$449od$
> > > > Pos nada, se me sigue parando en "letraDNI" diciendo que se


esperaba
> una
> > > > variable o procedimiento, pero no un módulo.
> > > > :-(
> > > >
> > > >
> > > >
> > > > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el


mensaje
> > > > news:
> > > > > Perdóneme usté, que he metido la gamba
> > > > >
> > > > > La función LetraDNI espera un valor de tipo Long, y yo le estoy
> > pasando
> > > un
> > > > > string. Cambia la línea por: strDNI = strDNI &
> letraDNI(CLng(strDNI))
> > > > >
> > > > > Un saludo
> > > > > Eva Etxebeste
> > > > > [MS MVP]
> > > > >
> > > > > "Laura McNee" escribió en el mensaje
> > > > > news:bee1s1$44q4c$
> > > > > > Gracias Eva. He copiado el evento tal que así, pero en la


línea
> que
> > te
> > > > > > señalo con asteriscos me dice que se esperaba una variable y


no
un
> > > > módulo.
> > > > > > ¿En qué fallo ahora?
> > > > > >
> > > > > > Private Sub Comando32_Click()
> > > > > > ' Creo una variable de trabajo
> > > > > > Dim strDNI As String
> > > > > >
> > > > > > ' Le asigno el contenido del txtBox donde el usuario
introduce
> > el
> > > > DNI
> > > > > y
> > > > > > _
> > > > > > le quito blancos
> > > > > > strDNI = Trim(Me.BuscaCIF)
> > > > > >
> > > > > > ' Si el último carácter no es un número, lo elimino
> > > > > > If Not IsNumeric(Right(strDNI, 1)) Then
> > > > > > strDNI = Left(strDNI, Len(strDNI) - 1)
> > > > > > End If
> > > > > >
> > > > > > ' Calculo la letra correcta y la concateno
> > > > > > ***** strDNI = strDNI & letraDNI(strDNI)
> > > > > >
> > > > > > ' Asigno a mi textbox la cadena calculada
> > > > > > Me.BuscaCIF = strDNI
> > > > > >
> > > > > > End Sub
> > > > > >
> > > > > >
> > > > > >
> > > > > > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el
> mensaje
> > > > > > news:
> > > > > > > Hola Laura
> > > > > > >
> > > > > > > A ver si consigo explicarme más o menos bien:
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#10 E. Feijoo
08/07/2003 - 16:19 | Informe spam
Que forma de desaprovechar lo 'Útil ¿ tan difícil es cerrar los ojos y dejar volar la imaginación ?
Así se aprovechan de vosotras con las modas ... por lo menos aquí ... sois débiles ;-))

Un saludo E. Feijoo

"Laura McNee" escribió en el mensaje news:bee8dq$43cba$
| Uy, me parece que va de duro por el mundo. Con la necesidá que hay.
| :-DDD
|
|
| "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
| news:O9F%
| > De nada gonita, pero el macizo a medias, eh? ;))))
| > --
| > Eva Etxebeste
| > [MS MVP]
| > "Laura McNee" escribió en el mensaje
| > news:bee5g9$457eb$
| > > Yayayaaaaaaaaaaaaaa funciona.
| > > Lo he puesto en dos formularios y en uno da problemas por el lío de
| > > controles que tengo allí, pero en el otro va de la muelte.
| > > :-)))
| > >
| > > Gracias Eva wapa.
| > >
| > > "Laura McNee" escribió en el mensaje
| > > news:bee52m$43oge$
| > > > Jiji, uich, perdón. Ya se lo he cambiado, pero ahora no hace nada
| > (tampoco
| > > > da error). ¿Crees que debo dimitir de ésto?
| > > >
| > > >
| > > > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el mensaje
| > > > news:
| > > > > Espera, esperaaaaaaaaaaa
| > > > >
| > > > > Al módulo estándar, ¿le has llamado "LetraDNI"? Si es así, la cosa
| va
| > > mal.
| > > > > El nombre del módulo no puede coincidir con el nombre de ninguna
| > función
| > > > ni
| > > > > sub.
| > > > >
| > > > > Un saludo
| > > > > --
| > > > > Eva Etxebeste
| > > > > [MS MVP]
| > > > > "Laura McNee" escribió en el mensaje
| > > > > news:bee3r2$449od$
| > > > > > Pos nada, se me sigue parando en "letraDNI" diciendo que se
| esperaba
| > > una
| > > > > > variable o procedimiento, pero no un módulo.
| > > > > > :-(
| > > > > >
| > > > > >
| > > > > >
| > > > > > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el
| mensaje
| > > > > > news:
| > > > > > > Perdóneme usté, que he metido la gamba
| > > > > > >
| > > > > > > La función LetraDNI espera un valor de tipo Long, y yo le estoy
| > > > pasando
| > > > > un
| > > > > > > string. Cambia la línea por: strDNI = strDNI &
| > > letraDNI(CLng(strDNI))
| > > > > > >
| > > > > > > Un saludo
| > > > > > > --
| > > > > > > Eva Etxebeste
| > > > > > > [MS MVP]
| > > > > > >
| > > > > > > "Laura McNee" escribió en el mensaje
| > > > > > > news:bee1s1$44q4c$
| > > > > > > > Gracias Eva. He copiado el evento tal que así, pero en la
| línea
| > > que
| > > > te
| > > > > > > > señalo con asteriscos me dice que se esperaba una variable y
| no
| > un
| > > > > > módulo.
| > > > > > > > ¿En qué fallo ahora?
| > > > > > > >
| > > > > > > > Private Sub Comando32_Click()
| > > > > > > > ' Creo una variable de trabajo
| > > > > > > > Dim strDNI As String
| > > > > > > >
| > > > > > > > ' Le asigno el contenido del txtBox donde el usuario
| > introduce
| > > > el
| > > > > > DNI
| > > > > > > y
| > > > > > > > _
| > > > > > > > le quito blancos
| > > > > > > > strDNI = Trim(Me.BuscaCIF)
| > > > > > > >
| > > > > > > > ' Si el último carácter no es un número, lo elimino
| > > > > > > > If Not IsNumeric(Right(strDNI, 1)) Then
| > > > > > > > strDNI = Left(strDNI, Len(strDNI) - 1)
| > > > > > > > End If
| > > > > > > >
| > > > > > > > ' Calculo la letra correcta y la concateno
| > > > > > > > ***** strDNI = strDNI & letraDNI(strDNI)
| > > > > > > >
| > > > > > > > ' Asigno a mi textbox la cadena calculada
| > > > > > > > Me.BuscaCIF = strDNI
| > > > > > > >
| > > > > > > > End Sub
| > > > > > > >
| > > > > > > >
| > > > > > > >
| > > > > > > > "Eva Etxebeste" <eetxebesteARROBAhotmail.com> escribió en el
| > > mensaje
| > > > > > > > news:
| > > > > > > > > Hola Laura
| > > > > > > > >
| > > > > > > > > A ver si consigo explicarme más o menos bien:
| > > > > > > >
| > > > > > > >
| > > > > > >
| > > > > > >
| > > > > >
| > > > > >
| > > > >
| > > > >
| > > >
| > > >
| > >
| > >
| >
| >
|
|



Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.497 / Virus Database: 296 - Release Date: 04/07/2003
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida