Problema con Worksheet_SelectionChange en Excel
Publicado por Joel (9 intervenciones) el 31/08/2007 17:32:38
Mi problema es con la macro Select_Row_Column, si la pruebo sola Funciona perfecto, pero al integrarla en Sub Worksheet_SelectionChange ya no hace lo que tiene que hacer
Debe de seleccionar una columna y una fila completas tomando como referencia la celda activa, pero al integrarla en Worksheet_SelectionChange pierde la referencia y seleciona otra fila ¿? alguien puede decirme que es lo que esta pasando
Anexo el código, agradeciendo su apoyo!
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call Select_Row_Column
End Sub
Sub Select_Row_Column()
Dim lugar2 As String
Dim CntCadena As Long
Dim Compara As String
Dim Chango As String
Dim PosRenglon As Long
PosRenglon = ActiveCell.Row
'Este procedimiento devuelve la posicion de la columna con carateres
'por ejemplo devuelve "A" en lugar de 1 si esta seleccionada una celda en A
lugar2 = ActiveCell.Address(False, False)
Chango = "Entrar"
Do
CntCadena = Len(lugar2)
Compara = Right(lugar2, 1)
Select Case Compara
Case 0 To 9
lugar2 = Left$(lugar2, CntCadena - 1)
Case Else
Chango = "salir"
End Select
Loop Until Chango = "salir"
'seleciona toda la columna correspondiente a la celda seleccionada
'y todo el renglon de la selda seleccionada
ActiveSheet.Range(lugar2 & ":" & lugar2 & "," & PosRenglon & ":" & PosRenglon & "," & lugar2 & PosRenglon).Select
ActiveSheet.Range(lugar2 & PosRenglon).Activate
End Sub
Debe de seleccionar una columna y una fila completas tomando como referencia la celda activa, pero al integrarla en Worksheet_SelectionChange pierde la referencia y seleciona otra fila ¿? alguien puede decirme que es lo que esta pasando
Anexo el código, agradeciendo su apoyo!
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call Select_Row_Column
End Sub
Sub Select_Row_Column()
Dim lugar2 As String
Dim CntCadena As Long
Dim Compara As String
Dim Chango As String
Dim PosRenglon As Long
PosRenglon = ActiveCell.Row
'Este procedimiento devuelve la posicion de la columna con carateres
'por ejemplo devuelve "A" en lugar de 1 si esta seleccionada una celda en A
lugar2 = ActiveCell.Address(False, False)
Chango = "Entrar"
Do
CntCadena = Len(lugar2)
Compara = Right(lugar2, 1)
Select Case Compara
Case 0 To 9
lugar2 = Left$(lugar2, CntCadena - 1)
Case Else
Chango = "salir"
End Select
Loop Until Chango = "salir"
'seleciona toda la columna correspondiente a la celda seleccionada
'y todo el renglon de la selda seleccionada
ActiveSheet.Range(lugar2 & ":" & lugar2 & "," & PosRenglon & ":" & PosRenglon & "," & lugar2 & PosRenglon).Select
ActiveSheet.Range(lugar2 & PosRenglon).Activate
End Sub
Valora esta pregunta


0