MACRO que pase a otra hoja solo los datos filtrados
Elsa Matilde, quiero utilizar la MACRO que diseño en la pregunta MACRO con opción de escoger celda de origen y destino para "convertir texto a numero" del 07 de noviembre 2015, pero cuando lo realiza me copia todas las filas no logrando lo que quiero osea pasar solo las filas filtradas, por favor ayúdeme con la modicacion de su creación, es la que sigue:
Sub PasarVal_otraHoja_SELEC() 'con selección de rangos 'x Elsamatilde 'hoja destino Set ho2 = Sheets("Hoja2") 'solicitar inicio del rango de datos de la hoja activa 'controla posible error al cancelar ventana On Error Resume Next 'evitar que se ejecute el evento Selection_Change Application.EnableEvents = False Set rango = Application.InputBox("Seleccione 1 celda o el rango que desee volcar a hoja y luego presione ACEPTAR.", Type:=8) rgo1 = rango.Address Set rango = Nothing Set rango = Application.InputBox("Seleccione la PRIMER celda de destino y luego presione ACEPTAR.", Type:=8) rgo2 = rango.Address On Error GoTo 0 If rgo1 = "" Or rgo2 = "" Then MsgBox "Error en el ingreso de celdas origen-destino." Exit Sub End If 'se recorre la col a partir de la celda origen hasta encontrar 1 celda vacía Range(rgo1).Select 'cantidad de columnas a convertir colx = Range(rgo1).Columns.Count While ActiveCell <> "" For i = 0 To colx - 1 'si se trata de celdas con texto se pasa sin convertir If IsNumeric(ActiveCell.Offset(0, i)) Then If Val(ActiveCell.Offset(0, i)) <> 0 Then ho2.Range(rgo2).Offset(0, i) = ActiveCell.Offset(0, i).Value * 1 End If Else 'pasa el dato sin convertir ho2.Range(rgo2).Offset(0, i) = ActiveCell.Offset(0, i).Value End If Next i 'pasa a la fila siguiente en rango destino rgo2 = Range(rgo2).Offset(1, 0). Address(False, False) 'pasa a fila sgte en rango origen ActiveCell.Offset(1, 0).Select Wend Application.EnableEvents = True End Sub
1 respuesta
Respuesta de Elsa Matilde
1