Como unir varias macros en una sola y que grabe los cambios al terminar de ejecutar la macro

hola tengo varias macros y deseo unirlas todas en una sola para ejecutarla en 100 archivos abiertos por ejemplo tengo una macro que me cambia parámetros tengo otra que borra la ultima linea de la hoja que tiene un parámetro ref pero cada que se ejecuta me deja seleccionado la fila que borro tengo otra qu copia y pega el encabezado de un archivo a otro te mando los códigos por favor para que me ayudes, si en el código puedes mejorar algo me dices por ejemplo el que borra la ultima linea que tiene ref en todos los archivos yo la ejecuto y me borra pero me queda seleccionado las celdas que borro me
gustaría que al ejecutar toda esta macro unida al final me guarde los cambios que hago gracias te pongo el código
macro 1 que borrar la ultima linea que tiene ref se ejecuta en todos los arhcivos abiertos
BORRAR REF
Public libro3
Sub Llamaborrar()
libro2 =
ActiveWorkbook.Name
For Each wb
In Workbooks
wb.Activate
Call borrar
Next
End Sub
Sub
borrar()
' borrar
Macro
Columns("CT:CT").Select
Selection.Delete Shift:=xlToLeft
End Sub


macro 2 que reemplaza en todos los documentos abiertos los parámetros hijo abuelo hermano etc


Sub Macro1()
Cells.Replace
What:="HIJO(A)", Replacement:="HIJO (A)", LookAt:=xlPart, _
SearchOrder:=xlByRows,
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Replace
What:="NIETO(A)", Replacement:="NIETO (A)", LookAt:=xlPart,
_
SearchOrder:=xlByRows,
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Replace
What:="HERMANO(A)", Replacement:="HERMANO (A)",
LookAt:=xlPart, _
SearchOrder:=xlByRows,
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Replace
What:="SOBRINO(A)", Replacement:="SOBRINO (A)",
LookAt:=xlPart, _
SearchOrder:=xlByRows,
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Replace
What:="PRIMO(A)", Replacement:="PRIMO (A)", LookAt:=xlPart,
_
SearchOrder:=xlByRows,
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Replace
What:="ABUELO(A)", Replacement:="ABUELO (A)",
LookAt:=xlPart, _
SearchOrder:=xlByRows,
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Replace
What:="SUEGRO(A)", Replacement:="SUEGRO (A)",
LookAt:=xlPart, _
SearchOrder:=xlByRows,
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Cells.Replace
What:="CUÑADO(A)", Replacement:="CUÑADO (A)",
LookAt:=xlPart, _
SearchOrder:=xlByRows,
MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub


macro que copia y pega encabezado en los otros archivos abiertos se ejecuta desde el archivo original que es donde copia la estructura. A1 hasta cs1 la primera fila


copia y pega no se si esta macro se pueda unir a estos otros debido que
esta se ejecuta teniendo el archivo abierto que se llama registro
inicial.


Sub COPIA_PEGA()
Range("A1:CS1").Copy
For Each wb In Workbooks
ActiveWindow.ActivateNext
Range("A1").Select
ActiveSheet.Paste
Next
End Sub


la pregunta es como puedo unir todo esto en una sola macro y que cuando se ejecute guarde automáticamente los cambios

Agradezco tu ayuda gracias

1 Respuesta

Respuesta
1

Cuál macro borra la última línea, no veo el código para borrar una línea, o tal vez, no pusiste la macro.

la macro que borra la ultima linea de todos los archivos que tengo abiertos es, a macro me funciona lo que quiero hacer es que se ejecute y no me deje señalado la columna también necesito unir esta macro con las otras anteriores y que e grabe apenas ejecute la macro.

BORRAR REF
Public libro3
Sub Llamaborrar()
libro2 =
ActiveWorkbook.Name
For Each wb
In Workbooks
wb.Activate
Call borrar
Next
End Sub
Sub
borrar()
' borrar
Macro
Columns("CT:CT").Select
Selection.Delete Shift:=xlToLeft
End Sub

experto otra pregunta que pena con usted apenas aprendo excel tengo dos celdas y necesito lo siguiente hacer una macro que haga si en la celda g2 dice femenino que vaya y busque en la celda ab1 si la celda esta basia ponga no aplica si la celda tiene datos que no haga nada la deje asi que solo ponga no aplica si esta basia.

Gracias por tu ayuda experto

Con gusto te ayudo en todo lo que necesites, no tengo problemas, pero vamos paso a paso.

1. Esta macro, ya está integrada.

Public libro3
Sub Llamaborrar()
libro2 = ActiveWorkbook.Name
For Each wb In Workbooks
wb.Activate
Call borrar
Next
End Sub
Sub borrar()
' borrar
Macro
Columns("CT:CT").Select
Selection.Delete Shift:=xlToLeft
End Sub

1.1. La macro no borra una fila, lo que hace es borrar la columna CT

2. Si quieres que se borre la última fila, tendrías que finalizar las preguntas y crear una nueva por cada petición.

Saludos. DAM

ok voy a probar ,

por favor ayudame con esto que lo tengo que hacer en el mismo archivo

experto otra pregunta que pena con usted apenas aprendo excel tengo dos
celdas y necesito lo siguiente hacer una macro que haga si en la celda
g2 dice femenino que vaya y busque en la celda ab1 si la celda esta
bacía ponga no aplica si la celda tiene datos que no haga nada la deje
asi que solo ponga no aplica si esta bacía.

Realiza tus pruebas y me comentas que te falta de la integración de las macros.

Si las macros de origen tienen alguna falla o no hacen lo que necesitas, tendrías que crear un nueva pregunta para cada petición.

Si quieres una nueva macro, crea una nueva pregunta, ahí me explicas el detalle de tu petición.

Saludos. DAM

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas