Excel VBA: cómo borrar una selección sin activar la hoja


1

Editar:

No borrar los datos de la selección, sino eliminar la propia selección. Supongo que esto sería equivalente a seleccionar un rango diferente, como A1.


Al menos en Excel XP, no hay forma de seleccionar una celda si la hoja no está activa.
MP24

Respuestas:


8

erm, ¿siempre puede usar VBA para hacer referencia a la hoja de trabajo y el rango de celdas?

Option Explicit

Sub RemoveValues()
  Worksheets("ACME_Sales").Range("A1:B17").ClearContents
End Sub

Esto borrará las celdas A1 a B17 en la hoja de trabajo ACME_Sales.

Editado Editar respuesta para reflejar la pregunta editada.

Sub SelectNewCell()
  Worksheets("ACME_Sales").Select
  Range("E2:E2").Select
End Sub

Esto permitirá que VBA elimine cualquier selección en ACME_Sales y luego seleccione la celda E2.


pregunta editada para aclarar
Nick

@Nick: sí, tiene razón: simplemente selecciona un rango diferente para anular la selección actual. Probar ("A1: A1")?
caliban

0

Para un orden de lista, todos pueden hacerlo así.

Sub test()

    ClearListRange sht, Range("PIVOTTABLEDATASOURCESSTART")

End Sub



Public Sub ClearListRange(sht as worksheet, Startrange As Range)

    sht.Range(Range(Startrange, Startrange.End(xlToRight)), Range(Startrange, Startrange.End(xlDown))).ClearContents


End Sub
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.