Programación General > VBA

 Excel - Sombrear Fila

<< < (2/2)

F_Tanori:

--- Citar ---y obviamente se borre, o se ponga normal al anterior

--- Fin de la cita ---

que se borre?... que se le quite el color? borre el contenido? o elimine la fila?

aque evento responderia?
sabes en que fila estas colocado?

Widark:
Que tal, creo que se refiere a esto:

--- Código: Text ---Dim iCeldaAnterior As Integer'Debes asignarle un valor a  iCeldaAnterior apenas se abra el libro, preferiblemente la fila seleccionadaPrivate Sub Worksheet_SelectionChange(ByVal Target As Range)    Cells(iCeldaAnterior, 1).EntireRow.Interior.ColorIndex = xlColorIndexNone    Target.EntireRow.Interior.ColorIndex = 9    iCeldaAnterior = Target.RowEnd Sub 

Dieguinho.:
Widark (o el que quiera/pueda colaborar).

Esto ultimo que me decis me sirvio en parte. Pero surgieron algunos errores como:

Si la fila a la que corresponde la celda activa tiene otro color lo pasa al color xlColorIndexNone (esto igualmente lo solucione guardando en una variable el nro de color de la fila).  Pero haciendo esto si la fila de la celda activa tenia columnas con distintos colores me da error ya que ColorIndex devuelve NULL.

Tambien me trae el problema que si selecciono muchas filas por ej. diez, cuando saco la seleccion nueve quedan pintadas!!

Por lo tanto probe lo siguiente:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Target.EntireRow.Select
End Sub

De esta manera me selecciona la fila de la celda que tengo activada. (que en realidad es lo que quiero, que quede seleccionada).
El unico problema de esto es que cuando quiero hacer doble click en una celda para ingresar algun dato siempre entra a este evento y me deja activa la celda de esa fila pero siempre la de la columna "A"

No se, si alguien se le ocurre algo que me pudiese ayudar a solucionar esto ultimo... se lo agradezco!

saludos!

pd: adjunto el archivo excel por si alguno lo quiere ver

Dieguinho.:
Bueno, finalmente encontre exactamente lo que queria hacer,
por si a alguno le interesa lo unico que hay que hacer es poner en el evento SelectionChange de la hoja (o de todo el libro) lo siguiente:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Target.EntireRow.Select
    Target.Activate
End Sub

igualmente gracias a todos por la ayuda!

saludos

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa