Te anexo la macro
Sub Copiar_Valores()
'Por.Dante Amor
Set h1 = Sheets("INDICE CLT18") 'hoja con datos
Set h2 = Sheets("IMPRESION") 'hoja presentación para imprimir
'
valor = h2.Range("F9")
If valor = "" Then
MsgBox "Introduce el dato a buscar"
Exit Sub
End If
'
Set b = h1.Columns("A").Find(valor, lookat:=xlWhole)
If Not b Is Nothing Then
u = h2.Range("D" & Rows.Count).End(xlUp).Row
n = 18
wtot = 0
If u < 18 Then u = 18
h2.Range("D18:E" & u).ClearContents
uc = h1.Cells(13, Columns.Count).End(xlToLeft).Column
For j = Columns("B").Column To uc
If h1.Cells(b.Row, j) <> "" Then
h2.Cells(n, "D") = h1.Cells(13, j)
h2.Cells(n, "E") = h1.Cells(b.Row, j)
wtot = wtot + h1.Cells(b.Row, j)
n = n + 1
End If
Next
h2.Cells(n, "D") = "Total"
h2.Cells(n, "E") = wtot
Else
MsgBox "El dato no existe"
End If
End Sub
Cambia en la macro "IMPRESION" por el nombre de la hoja que vas a utilizar para imprimir. Pon un botón en la hoja "impresion" y asigna el botón a la macro.
En al imagen veo que tienes una hoja por cada número de pedido. Entonces si quieres ejecutar la macro sobre cada hoja de pedido, cambia en la macro esta línea
Set h2 = Sheets("IMPRESION") 'hoja presentación para imprimir
Por esta
Set h2 = Activesheet 'hoja presentación para imprimir
Entonces no crees el botón y ejecuta la macro sobre la hoja seleccionada.
La macro ya te pone el total, pero no pone el valor de "area".
.
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
.
Avísame cualquier duda
.