Me gustaría que la apariencia final después de que mi VBA haya terminado de ejecutarse esté vacía de selección -- no tener ninguna celda o rango en ninguna hoja coloreada (si fue rango seleccionado) o en un cuadro de línea en negrita (cualquier cosa que haya sido seleccionada). Pupose: para presentar al cliente con un aspecto final limpio.
He buscado y no puedo encontrar cómo hacer esto. Hay un Unselect según MS, pero no parece hacer nada.
Selecciona cualquier celda y desactiva CortarCopiar
:
Range("A1").Select
Application.CutCopyMode = False
Excel siempre tiene algo seleccionado. Se necesita una solución. Al seleccionar una celda fuera de la pantalla, el foco se fijará allí, por lo que no funcionará por sí mismo. Este código coloca el cursor fuera de la pantalla y luego vuelve a desplazar la hoja hacia arriba para ver A1
.
Sub NoSelect()
Range("BB100").Select
ActiveWindow.SmallScroll up:=100
ActiveWindow.SmallScroll ToLeft:=44
End Sub
Si realmente quieres 'nada seleccionado``, puedes usar VBA para proteger la hoja al final de la ejecución de tu código, lo que hará que no se seleccione nada. Usted puede agregar esto a una macro o ponerlo en su VBA directamente.
Sub NoSelect()
With ActiveSheet
.EnableSelection = xlNoSelection
.Protect
End With
End Sub
En cuanto la hoja esté desprotegida, el cursor activará una celda.