Copiar - Pegar valores en codigo

27/04/2009 - 23:38 por faico | Informe spam
Hola Grupo,

Hace tiempo que no escribía...

Tengo el siguiente código que copia y pega una serie de celdas de un
documento a otro pero lo que necesitaría es que copie y pegue VALORES
unicamente

Sabe alguien como cambier el codigo?

Sub Botón3_AlHacerClic()
Dim strArchivo As String
Dim oLibro As Workbook
strArchivo = "E:\Lugar\del\documento\Clientes_2008.xls"
If Dir(strArchivo) = "" Then
MsgBox "No existe el archivo en la ruta indicada."
Exit Sub
End If
Application.ScreenUpdating = False
On Error Resume Next
Set oLibro = Workbooks(Dir(strArchivo))
On Error GoTo 0
If oLibro Is Nothing Then Set oLibro = Workbooks.Open(strArchivo)
oLibro.Worksheets("HOJA1").Range("A2:A39").Copy _
Workbooks("Reporting WorldWide.xls").Worksheets("BD").Range
("D7")
oLibro.Worksheets("HOJA1").Range("B2:B39").Copy _
Workbooks("Reporting WorldWide.xls").Worksheets("BD").Range
("E7")
oLibro.Worksheets("HOJA1").Range("B2:B39").Copy _
Workbooks("Reporting WorldWide.xls").Worksheets("BD").Range
("F7")
oLibro.Worksheets("HOJA1").Range("C2:D39").Copy _
Workbooks("Reporting WorldWide.xls").Worksheets("BD").Range
("G7")
oLibro.Worksheets("HOJA1").Range("F2:J39").Copy _
Workbooks("Reporting WorldWide.xls").Worksheets("BD").Range
("I7")
oLibro.Worksheets("HOJA1").Range("M2:O39").Copy _
Workbooks("Reporting WorldWide.xls").Worksheets("BD").Range
("N7")
oLibro.Close False
Set oLibro = Nothing
Application.ScreenUpdating = True
End Sub

Muchas gracias!
Hasta pronto

Preguntas similare

Leer las respuestas

#6 faico
29/04/2009 - 23:45 | Informe spam
Es increible Hector, funciona perfectamente y ademas lo has
simplificado bastante!

Eres una maquina!

Solo una duda,

No pones el "offset" en la primera linea porque es 1? Es decir que
daría igual poner

Destino.Resize(nFilas, 2).Value = .Resize(, 2).Value

que poner?

Destino.Offset(, 1).Resize(nFilas, 2).Value = .Offset(, 1).Resize(,
2).Value

Muchas gracias de nuevo
nacho
Respuesta Responder a este mensaje
#7 faico
30/04/2009 - 00:13 | Informe spam
Perdon, quise decir que sea 0

Destino.Offset(, 0).Resize(nFilas, 2).Value = .Offset(, 0).Resize(,
2).Value
Respuesta Responder a este mensaje
#8 Héctor Miguel
30/04/2009 - 01:40 | Informe spam
hola, nacho !

Solo una duda, No pones el "offset" en la primera linea porque ...



offset sirve para "desplazar" una referencia para que haga referencia a otra referencia
("suena como a trabalenguas" no ?)

si no requieres desplazar la referencia original, da lo mismo si "te quedas en ella", o sea, son lo mismo:
<referencia>
<referencia>.Offset()
<referencia>.Offset(0, 0)

yo prefiero la primera opcion :D
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida