Excel - Error de Macro PasteSpecial

   
Vista:

Error de Macro PasteSpecial

Publicado por Xhred (2 intervenciones) el 21/06/2016 06:19:07
¡Buen Día!

Bueno estoy teniendo un problema con los macros de excel que tira el error 1004, error en el metodo PasteSpecial de la clase range.

he buscado como solucionarlo pero no lo ha solucionado y me marca que es con esta linea de codigo

1
wsDestino.Cells(Columns.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues

pero no se que es lo que realmente pasa ya que si lo uso para copiar celdas por ejemplo de 4x4 hace la copia o un rango de 4 celdas horizontales tambien lo hace pero el problema se da cuando son mas de 2 archivos ya que hace la copia de el primer archivo y ya no hace la copia de los demas.

Pongo el codigo completo de donde se da el error ademas lo obtuve de un video de youtube ya que estaba buscando como hacer un tipo de libro de resumen de varios archivos de excel y este me parecio el adecuado.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
Sub ImportarData()
 
Call ContarArchivos
 
Application.ScreenUpdating = False
Dim WorkBookOrigen As Workbook
    Dim wsOrigen As Excel.Worksheet, _
    wsDestino As Excel.Worksheet, _
    rngOrigen As Excel.Range, _
    rngDestino As Excel.Range, _
    NombreArchivo As String, _
    Carpeta As String
 
    Carpeta = ActiveWorkbook.Path & "\"
 
nArchivo = 1
 
NombreArchivo = Dir(Carpeta & "" & "*.xlsx")
 
Do While Len(NombreArchivo) > 0
 
        Set WorkBookOrigen = Workbooks.Open(Carpeta & NombreArchivo)
 
            NombreArchivo = Dir()
 
        ThisWorkbook.Activate
 
        Set wsOrigen = WorkBookOrigen.Worksheets(1)
        Set wsDestino = Worksheets(1)
 
        wsOrigen.Activate
        Range("KN200", "LE200").Select
        Selection.Copy
 
Errores:
        If Err.Number = 1004 Then
            wsOrigen.Activate
            rngOrigen.Select
            Range(Selection, Selection.End(xlToRight)).Select
            Selection.Copy
        End If
 
            For n = 1 To 1
            wsDestino.Activate
 
On Error GoTo Errores
               'Aqui es donde se da el error antes mencionado
                wsDestino.Cells(Columns.Count, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
            Next n
            Application.CutCopyMode = False
 
        WorkBookOrigen.Save
        WorkBookOrigen.Close
 
        nArchivo = nArchivo + 1
 
    Call Progreso
 
Loop
 
j = nArchivo - 1
 
Application.ScreenUpdating = True
 
MsgBox j & " Archivos procesados"
 
End Sub

De ser necesario aqui el video de donde se obtuvo el codigo y archivos

Espero me puedan ayudar y gracias por su apoyo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Error de Macro PasteSpecial

Publicado por Xhred (2 intervenciones) el 22/06/2016 06:18:34
Gracias compañeros ya logre resolver el problema y era que esta linea de codigo

1
NombreArchivo = Dir(Carpeta & "" & "*.xlsx")

la tenia en otro modulo o sub pero de esta forma

1
NombreArchivo = Dir(Carpeta & "Libro" & "*.xlsx")

por eso es que daba ese error porque no tenian semejanza esas 2 lineas de codigo y el programa no sabe que hacer.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar