Macro copiar y pegar

Buenos días me pregunto si me podrías ayudar con una macro que me copie un rango de w1:y20 y ese rango me lo pegue en la columna del lado derecho de una celda con la palabra total general
gracias

1 Respuesta

Respuesta
1

Perdona la demora; pero estos días he estado algo ocupado. Bueno espero haberte entendido bien, te adjunto la macro, por favor pruébala espero te sea de utilidad.
Sub Macro_Copiar_Pegar_TE()
' Macro_Copiar_Pegar_Todo_Expertos
'Selecciona el rago que deseas W1 a Y20
Range("W1:Y20").Copy
' Selecciona la celda donde inicia la copia
' del rango selccionado.
Range("Z2").Select
ActiveSheet.Paste
' Selecciona la celda Z1, para escribir
' la palabra total general
Range("Z1").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "Total General"
End Sub

que pena tu macro funciona excelente pero lo que realmente necesito la macro busque en toda la hoja en que celda esta escrita la palabra total general y que cuando la encuentre me pegue el rango ("W1:Y20") al lado

ejm

supongamos que la macro encontró la palabra en la celda A20 entonces me pegue el rango en b20

gracias

La segunda explicación es más clara, prueba este macro que busca el texto "Total General"; esto puede se parametrizado y copia el rango justo junto a la celda donde se encuentre la palabra Total General

Sub Macro_Copiar_Pegar_TE()
' Macro_Copiar_Pegar_Todo_Expertos
' método que busca la celda con el texto deseado
Dim Celda As Range
Set Celda = SearchTarget("Total General")
' Variable que almacena la celda inferior a Total General
Dim CeldaCopy As Range
Celda.Select
Set CeldaCopy = ActiveCell.Offset(0, 1)
'Selecciona el rago que deseas W1 a Y20
Range("W1:Y20").Copy
' Selecciona la celda donde inicia la copia
' del rango selccionado.
CeldaCopy.Select
ActiveSheet.Paste
' Selecciona la celda Z1, para escribir
' la palabra total general
Application.CutCopyMode = False
End Sub

' Busca el texto deseado
Private Function SearchTarget(ByVal Target As String) As Range
Set SearchTarget = Cells.Find(What:=Target, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
End Function

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas