UNIR TRES MACROS EN UNA SOLA
Publicado por CARLINHOS (9 intervenciones) el 22/06/2018 16:42:40
BUENAS EXPERTOS AYUDA POR FAVOR., TENGO 3 MACROS:
1.- LA PRIMERA GUARDA DATOS DE UNA HOJA A OTRA
2.- LA SEGUNDA UBICA LOS DUPLICADOS EJEMPLOS SI HAY DOS CARLOS COLOCA COMO DUPLICAOD A LOS DOS CARLOS
3.- ELIMINA LOS QUE ETIQUETE COMO DUPLICADO...EH INTENTADO LLAMAR LA MACRO DUPLICADOS DESDE GUARDAR PERO NO FUNCIONA...QUIERO UNIR LAS TRES MACROS EN UNA SOLA PARA OPTIMIZAR AQUI ESTA MI CODIGO:
LAS TRES MACROS FUNCIONAN POR SEPARADO A LA PERFECCION:
1.- LA PRIMERA GUARDA DATOS DE UNA HOJA A OTRA
2.- LA SEGUNDA UBICA LOS DUPLICADOS EJEMPLOS SI HAY DOS CARLOS COLOCA COMO DUPLICAOD A LOS DOS CARLOS
3.- ELIMINA LOS QUE ETIQUETE COMO DUPLICADO...EH INTENTADO LLAMAR LA MACRO DUPLICADOS DESDE GUARDAR PERO NO FUNCIONA...QUIERO UNIR LAS TRES MACROS EN UNA SOLA PARA OPTIMIZAR AQUI ESTA MI CODIGO:
LAS TRES MACROS FUNCIONAN POR SEPARADO A LA PERFECCION:
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub GuardarDatos()
filalibre = Sheets("HOJA2").Range("A1048576").End(xlUp).Row + 1
ActiveSheet.Range("A2").Select
fila = 2
While ActiveCell.Value <> ""
Sheets("HOJA2").Cells(filalibre, 1) = ActiveCell.Offset(0, 0) 'producto
filalibre = filalibre + 1
ActiveCell.Offset(1, 0).Select
Wend
End Sub
1
2
3
4
5
6
7
8
9
10
11
12
Sub DUPLICADO()
Dim B As Long
Dim numfilas As Long
numfilas = Hoja2.Cells(Rows.Count, 1).End(xlUp).Row
For B = numfilas To 1 Step -1
If WorksheetFunction.CountIf(Hoja2.Range("A:A"), Cells(B, 1)) > 1 Then
Hoja2.Range("B" & B).Value = "DUPLICADO"
End If
Next B
End Sub
1
2
3
4
5
6
7
8
9
10
11
12
Sub ELIMINARDUPLICADOS()
Dim i As Integer, nFilas As Integer
nFilas = ActiveSheet.Cells(4, 1).CurrentRegion.Rows.Count
For i = nFilas To 2 Step -1
Cells(i, "B").Select
If Cells(i, "B") = "DUPLICADO" Then
ActiveCell.EntireRow.Select
Selection.Delete
End If
Next i
End Sub
Valora esta pregunta


0