Operador & en VBA NO FUNCIONA

%3CLINGO-SUB%20id%3D%22lingo-sub-3011698%22%20slang%3D%22en-US%22%3EOperador%20%26amp%3B%20en%20VBA%20NO%20FUNCIONA%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-3011698%22%20slang%3D%22en-US%22%3E%3CP%3EEn%20una%20macro%20el%20operador%20%26amp%3B%20no%20funciona%3A%3C%2FP%3E%3CP%3ESub%20test(palabra)%3C%2FP%3E%3CP%3Epalabra%3D%20%22T%22%20%26amp%3B%20%22W%22%3C%2FP%3E%3CP%3Eend%20sub%3C%2FP%3E%3CP%3EEn%20esta%20macro%20palabra%20deberia%20tener%20palabra%3D%22TW%22%20sin%20embargo%20su%20contenido%20es%20nada.%3C%2FP%3E%3CP%3E%C2%BFPuede%20alguien%20confirmarlo%3F.%20Hay%20un%20fallo%20real.%3C%2FP%3E%3CP%3EMuchas%20gracias%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-3011698%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EExcel%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EFormulas%20and%20Functions%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3EMacros%20and%20VBA%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-3011827%22%20slang%3D%22en-US%22%3ERe%3A%20Operador%20%26amp%3B%20en%20VBA%20NO%20FUNCIONA%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-3011827%22%20slang%3D%22en-US%22%3E%3CP%3E%3CA%20href%3D%22https%3A%2F%2Ftechcommunity.microsoft.com%2Ft5%2Fuser%2Fviewprofilepage%2Fuser-id%2F1208518%22%20target%3D%22_blank%22%3E%40icar1udm211990%3C%2FA%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%C2%BFC%C3%B3mo%20est%C3%A1s%20usando%20esta%20macro%3F%20No%20produce%20ning%C3%BAn%20resultado%20por%20s%C3%AD%20mismo.%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-3012077%22%20slang%3D%22en-US%22%3ERe%3A%20Operador%20%26amp%3B%20en%20VBA%20NO%20FUNCIONA%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-3012077%22%20slang%3D%22en-US%22%3EEs%20un%20problema%20resumido.%3CBR%20%2F%3EEl%20resultado%20que%20deberia%20devolver%20es%20TW%2C%20pero%20devuelve%20vacio%2C%20nulo%3CBR%20%2F%3EEstando%20codificando%20una%20clave%20de%20acceso%20leo%20caracter%20por%20caracter%20de%20la%20clave%20cuando%20la%20secuencia%20es%20TW%20no%20devuelve%20nada.%20No%20se%20si%20me%20he%20explicado%20lo%20suficiente%2C%20con%20lo%20cual%20no%20puedo%20codificar%20una%20clave.%3CBR%20%2F%3E%C2%BF%20Has%20hecho%20la%20prueba%20%3F%20%C2%BF%20Que%20resultado%20obtienes%20%3F%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-3012094%22%20slang%3D%22en-US%22%3ERe%3A%20Operador%20%26amp%3B%20en%20VBA%20NO%20FUNCIONA%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-3012094%22%20slang%3D%22en-US%22%3ECuando%20pones%20una%20sentencia%20stop%3A%3CBR%20%2F%3ESub%20test(codez)%3CBR%20%2F%3Ecodez%3D%20%22T%22%20%26amp%3B%20%22W%22%3CBR%20%2F%3Ex%3D1%3CBR%20%2F%3Estop%3CBR%20%2F%3Eend%20sub%3CBR%20%2F%3E%3CBR%20%2F%3Ey%20miras%20el%20valor%20de%20la%20variable%20codez%20no%20se%20ve%20ningun%20resultado%20%2C%20sin%20embargo%20la%20variable%20x%20tiene%20el%20valor%201%20y%20ese%20si%20aparece.%3CBR%20%2F%3ET%20y%20W%20son%20las%20iniciales%20de%20Thomas%20Watson%20que%20sirven%20para%20iniciar%20una%20clave%3A%20por%20ejemplo%20%2C%20TW09876.%3CBR%20%2F%3Epero%20no%20se%20puede%20ya%20que%20codez%20es%20nulo.%20Eso%20es%20lo%20que%20se%20muestra%20en%20la%20pantalla%20de%20microsft%20visual%20basic%20para%20aplicaciones.VBA%20durante%20la%20creaci%C3%B3n%20y%20comprobaci%C3%B3n%20de%20las%20macros.%3CBR%20%2F%3E%C2%BF%20Puede%20usted%20reproducir%20este%20resultado%20%3F%3C%2FLINGO-BODY%3E
Occasional Contributor

En una macro el operador & no funciona:

Sub test(palabra)

palabra= "T" & "W"

end sub

En esta macro palabra deberia tener palabra="TW" sin embargo su contenido es nada.

¿Puede alguien confirmarlo?. Hay un fallo real.

Muchas gracias

5 Replies

@icar1udm211990 

¿Cómo estás usando esta macro? No produce ningún resultado por sí mismo.

Es un problema resumido.
El resultado que deberia devolver es TW, pero devuelve vacio, nulo
Estando codificando una clave de acceso leo caracter por caracter de la clave cuando la secuencia es TW no devuelve nada. No se si me he explicado lo suficiente, con lo cual no puedo codificar una clave.
¿ Has hecho la prueba ? ¿ Que resultado obtienes ?


Cuando pones una sentencia stop:
Sub test(codez)
codez= "T" & "W"
x=1
stop
end sub

y miras el valor de la variable codez no se ve ningun resultado , sin embargo la variable x tiene el valor 1 y ese si aparece.
T y W son las iniciales de Thomas Watson que sirven para iniciar una clave: por ejemplo , TW09876.
pero no se puede ya que codez es nulo. Eso es lo que se muestra en la pantalla de microsft visual basic para aplicaciones.VBA durante la creación y comprobación de las macros.
¿ Puede usted reproducir este resultado ?

@icar1udm211990 

¿Podría explicar cómo utiliza la macro Test?

Bueno usted puede llamarla desde otra macro, por ejemplo:
Sub hacer(): call test(codez): x=msgbox("Codez= " & Codez, vbInformation, "TEST"): end sub

Bueno, parece ser que cuando se está probando una macro con este tipo de sentencias ( instrucciones) y se para la ejecución de la macromediante la instrucción stop o mediante un punto de interrupción y se pone el cursor encima de la varible para poder ver el valor que tiene resulta que el valor que se obtiene es nulo ( después de haber ejecutado la instrucción ya que antes evidentemente no hay valor posible ).
Hay un fallo en el visualizador evidentemente y eso hace que parezca que falla el operador.
Saludos.