Saltar al contenido

error que me presenta una macro que he realizado

publicado

bueno tengo una macro con un InputBox que me permite copiar una hoja del libro de excel pero cuando la pongo a funcional y le doy cancelar entonces me muestra un error y al darle depurar me señala en amarillo este código (ActiveSheet.Name = UCase(nombre) ) y al igual me crea una hoja exactamente igual.


[COLOR=#660066]Private[/COLOR][COLOR=#000000] [/COLOR][COLOR=#660066]Sub[/COLOR][COLOR=#000000] [/COLOR][COLOR=#660066]CommandButton2_Click[/COLOR]()
[COLOR=#660066]Sheets[/COLOR]([COLOR=#008800]"TORTA ENVINADA COD. 100"[/COLOR]).[COLOR=#660066]Visible[/COLOR][COLOR=#000000] [/COLOR]=[COLOR=#000000] [/COLOR][COLOR=#000088]True[/COLOR]
[COLOR=#660066]Application[/COLOR].[COLOR=#660066]ScreenUpdating[/COLOR][COLOR=#000000] [/COLOR]=[COLOR=#000000] [/COLOR][COLOR=#000088]False[/COLOR]
[COLOR=#000000]origen [/COLOR]=[COLOR=#000000] [/COLOR][COLOR=#008800]"TORTA ENVINADA COD. 100"[/COLOR]
[COLOR=#000000]nombre [/COLOR]=[COLOR=#000000] [/COLOR][COLOR=#660066]InputBox[/COLOR]([COLOR=#008800]"Escoja un nombre para la hoja que se creará"[/COLOR],[COLOR=#000000] [/COLOR][COLOR=#008800]"Nuevo nombre"[/COLOR])
[COLOR=#000000] [/COLOR][COLOR=#660066]Worksheets[/COLOR]([COLOR=#008800]"TORTA ENVINADA COD. 100"[/COLOR]).[COLOR=#660066]Copy[/COLOR][COLOR=#000000] [/COLOR][COLOR=#660066]After[/COLOR]:=[COLOR=#660066]Sheets[/COLOR]([COLOR=#660066]Sheets[/COLOR].[COLOR=#660066]Count[/COLOR])
[COLOR=#660066]ActiveSheet[/COLOR].[COLOR=#660066]Name[/COLOR][COLOR=#000000] [/COLOR]=[COLOR=#000000] [/COLOR][COLOR=#660066]UCase[/COLOR]([COLOR=#000000]nombre[/COLOR])
[COLOR=#660066]Sheets[/COLOR]([COLOR=#000000]nombre[/COLOR]).[COLOR=#660066]Range[/COLOR]([COLOR=#008800]"b1"[/COLOR])[COLOR=#000000] [/COLOR]=[COLOR=#000000] [/COLOR][COLOR=#660066]UCase[/COLOR]([COLOR=#000000]nombre[/COLOR])
[COLOR=#660066]Sheets[/COLOR]([COLOR=#000000]origen[/COLOR]).[COLOR=#660066]Activate[/COLOR]
[COLOR=#660066]Application[/COLOR].[COLOR=#660066]ScreenUpdating[/COLOR][COLOR=#000000] [/COLOR]=[COLOR=#000000] [/COLOR][COLOR=#000088]True[/COLOR]
[COLOR=#660066]Sheets[/COLOR]([COLOR=#008800]"TORTA ENVINADA COD. 100"[/COLOR]).[COLOR=#660066]Visible[/COLOR][COLOR=#000000] [/COLOR]=[COLOR=#000000] [/COLOR][COLOR=#000088]False[/COLOR]
[COLOR=#660066]End[/COLOR][COLOR=#000000] [/COLOR][COLOR=#660066]Sub[/COLOR][/CODE]

[color=#666666][font=Arial]

[/font][/color][color=#666666][font=Arial]El anterior es el código que tengo para un CommandButton lo que quiero es que me permita cancelar la operación sin mostrar error y sin crear la hoja pues al cancelarlo no le e pedido que me cree ninguna hoja.[/font][/color][color=#666666][font=Arial]

[/font][/color]

[color=#660066]

[/color]

Featured Replies

publicado

Hola stepha.

No mire mas detalladamente su código pero puede probar poniendo:

On Error GoTo 1[/CODE]

entre las primeras lineas del cosigo, y poniendo:

[CODE]1 End Sub [/CODE]

en lugar de "End Sub"

Saludos

publicado
  • Autor

HOLA, HBanchieri

muchas gracias el código funciona bien y me evita la depuración pero igual me genera una hoja que yo no le he pedido que me ingrese ¿que podría hacer para que al yo darle cancelar no me cree ninguna hoja, que no haga nada ?, que la creación de la hoja solo se haga cuando yo le de aceptar...

de ante mano gracias

publicado

Añade:

If nombre = Empty Then Exit Sub[/CODE]

después del InputBox

publicado
  • Autor

Es perfecto muchas gracias.

tema solicionado

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.