Pegar Fórmulas en Filas Filtradas

Tengo 8 diferentes fórmulas de concatenación que quiero aplicar a una hoja de excel con poco menos de 12 mil filas en registros. ( Estas fórmulas se encuentran en las celdas " BO11943-BO11947" y otras 4 en "BO11953-BO11956" ). Y son únicas y aplican a todos los registros. Las fórmulas cubren unicamente 4 columnas. (( =CONCATENATE(C11956," ", E11956," x ", F11956," GRADE ", M11956))) En la columna "C" se aplicaran filtros para cada grupo. Ejemp. El grupo "FB" tiene 1661 entradas. Quisiera aplicar una macro IF.

Si C = FB Then ( pegar la formula concatenada q le corresponde, " FB x GRADE" en este caso la de la celda BO11956 ) y lo haga en todo el rango de filas filtradas.

Lo eh intentado pero no consigo que peguen estas fórmulas, espero me puedan ayudar con este problema.

Si necesitaran que agregue el archivo, o lo comparta por correo, háganme saber.

Les agradezco de antemano su apoyo y quedo en espera de su amable respuesta.

Saludos.

1 respuesta

Respuesta
1

Mándame el excel con los datos y un ejemplo manual para poder ayudarte mejor

[email protected]

Ya te he mandado la solución por mail y aquí pego la macro entera:

Sub proceso()
'por luismondelo
filas = Range("c2").End(xlDown).Row
pase1 = MsgBox("El proceso analizará un total de: " & filas & " filas" & Chr(13) & _
"Desea continuar???", vbYesNo, "ATENCION")
If pase1 = vbNo Then Exit Sub
Range("c2").Select
Do While ActiveCell.Value <> ""
Select Case ActiveCell
Case Is = "STR"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "STS"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "SBG"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "LE"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "LU"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "PL"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "RB"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "PIP"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "C"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "W"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
Case Is = "FB"
lista = ActiveCell & " " & ActiveCell.Offset(0, 2) & " x " & ActiveCell.Offset(0, 3) & " x " & ActiveCell.Offset(0, 4) & "GRADE" & ActiveCell.Offset(0, 10)
ActiveCell.Offset(0, 64).Value = lista
End Select
ActiveCell.Offset(1, 0).Select
Loop
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas