No se ha definido Sub o Function

Como el titulo lo dice, va relacionado a una Macros que tengo en Excel.. Antes otras macros me funcionaban bien en la misma hoja, por motivo extraño (para mí) ya no funciona ninguna. Desde ya muchas gracias y explico como es mi ejemplo básico.

Mi ejemplo va de una Tabla en "Hoja1", como se muestra a continuación:

Donde la Macro que quiero implementar tiene por objetivo quitar, en realidad ocultar (sin borrarlas) a las Filas que tengan en la Columna "Dirección" el valor de "N/S"..

Pero no me funciona directamente la Macro, esta es el código y el error donde me marca:

4 Respuestas

Respuesta
2

El problema esta en los espacios que hay en las líneas 2, 3 y 8 del código. Una vez eliminada los espacios el problema se soluciona. Adicionalmente, en la línea 8 se debe realizar las respectiva tabulación para que el código siga manteniendo su orden.

Sin otro particular.

Respuesta
1

Solamente la activo (o intento activarla) desde aquí, perdón se me paso agregar este dato. Hasta ahí es lo único que se como activarla. De igual manera en el Editor de VBA, lo ejecuto y nada.

Gracias Abraham

Ese cuadro azul, no lo he puesto yo. Aparece solo al querer ejecutar la Macro, no hay nada de bajo, es básicamente como que me marca la "identacion" del código. Pero solo eso

Ese cuadro azul se me agrega solo, cuando intento ejecutar la macro me marca como la identación del código. No hay nada de bajo de ello, solo me lo marca así con azul.

Muy bien.. Aquí acabo de subirlo en un "Drive".. Si genera algún tipo de problema, por favor, hágamelo saber. Gracias!

Link: https://drive.google.com/drive/folders/1iTb2T4YcoTR0oSRt5PUS_kODe8visLKb 

Respuesta
1

Tienes el caracter "160" en algunas líneas, es por eso que marca el error.

https://jldexcelsp.blogspot.mx/2012/10/el-extrano-caso-del-espacio-inamovible.html 

Simplemente elimina los "espacios en blanco" de cada línea antes de iniciar la instrucción, te paso el código ya sin los caracteres 160

Sub ocultarR()
Range("D4").Select
palabra = InputBox("N/S")
While ActiveCell.Value <> ""
If ActiveCell.Value = palabra Then
ActiveCell.EntireRow.Hidden = True
ActiveCell.Offset(1, 0).Select
Else
ActiveCell.Offset(1, 0).Select
End If
Wend
End Sub

Utiliza el tabulador de VBA para indentar las líneas.

Respuesta
1

Esa macro "ocultarR" ¿desde dónde y cómo la activas? Si lo haces desde otra macro sugiero colocarlo aquí también.

Abraham Valencia

Delante de la primera línea en la captura de pantalla sale un cuadrado azul ¿tú lo has colocado en la imagen o que es? Si has sido tú ¿qué hay debajo?

Abraham Valencia

Coloca en el archivo en algún "drive" para poder verlo, la captura de pantalla no permite ver "todo"

Abraham Valencia

Recién pude reconectarme pero veo que ya te ayudaron, borrados esos espacios, solucionado el problema. Por cierto, esos espacios probablemente los copiaste de alguna web.

Salu2

Abraham Valencia

Muchas gracias igual Abraham, y si, por haber copiado de internet me pasa estos errores ja ja.. Un saludo cordial !

Un abrazo :)

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas