Excel - Importación de otro libro

 
Vista:
sin imagen de perfil
Val: 34
Ha aumentado su posición en 8 puestos en Excel (en relación al último mes)
Gráfica de Excel

Importación de otro libro

Publicado por Guillermo (22 intervenciones) el 13/07/2021 00:45:18
Buenas tardes.


Estoy intentando importar datos de otro archivo de excel. Cuando ejecuto la Macro de importación me dice que hay un error en el código de pegado que no logro resolver. Intenté varias formas de referenciar la celda en la que quiero pegar (que sería la primera fila vacía de la columna A) y no logro hacerlo.

Dejo acá el libro con la macro para ver si alguien puede encontrar el error.
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
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Importación de otro libro

Publicado por Antoni Masana (2478 intervenciones) el 13/07/2021 14:47:36
Supongo que esta es tu macro que falla.
Lo único que he realizado es ponerla de forma que se pueda leer bien por un humano, al Excel tanto le da si esta así o echa un churro.

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
68
69
70
71
72
73
74
75
Private Sub ImportarResultados_Click()
    Dim BaseDeDatos As Workbook
    Dim LibroAImportar As Workbook
    Dim Ruta As String
 
    ' ---&---  Abrir archivo
 
    Set BaseDeDatos = ThisWorkbook
    Ruta = Application.GetOpenFilename(Title:="Seleccioná el archivo a importar")
 
    ' ---&---  Si se cancela la importación
 
    If Ruta = "False" Then Exit Sub
 
    ' ---&---  Código para copiar los datos una vez que se seleccione el archivo
 
    Set LibroAImportar = Workbooks.Open(Ruta)
 
    ' ---&---  Defino ultima fila del libro a importar
 
    ultimafilaimportar = LibroAImportar.Sheets(1).Range("A1000").End(xlUp).Row
 
    ' ---&---  Copia datos de la hoja a importar
 
    LibroAImportar.Sheets(1).Range(Cells(1, 1), Cells(ultimafilaimportar, 12)).Copy
    LibroAImportar.Close savechanges:=False
 
 
    Sheets("Base de datos").Select
    With Sheets("Base de datos").Range("C100000").End(xlUp).Row + 1
        .PasteSpecial xlPasteValues 'esta referencia no le gusta
    End With
    ' ---&---  ejecuta el reemplazo de texto
 
    Columns("L:L").Select
 
    Selection.Replace What:="OR", _
                      Replacement:="Del ORF 1a", _
                      LookAt:=xlWhole, _
                      SearchOrder:=xlByRows
 
    Selection.Replace What:="OR69", _
                      Replacement:="Del 69/70 - Del ORF 1a", _
                      LookAt:=xlWhole, _
                      SearchOrder:=xlByRows
 
    Selection.Replace What:="OR246", _
                      Replacement:="Del ORF 1a - Del 246/252", _
                      LookAt:=xlWhole, _
                      SearchOrder:=xlByRows
 
    Selection.Replace What:="NO", _
                      Replacement:="Sin deleciones", _
                      LookAt:=xlWhole, _
                      SearchOrder:=xlByRows
 
    Selection.Replace What:="NOA", _
                      Replacement:="No amplifica", _
                      LookAt:=xlWhole, _
                      SearchOrder:=xlByRows
 
    Selection.Replace What:="NOAN", _
                      Replacement:="No hay AN", _
                      LookAt:=xlWhole, _
                      SearchOrder:=xlByRows
 
    ' ---&---  eliminar duplicados
 
    ' ---&---  ordenar por fecha
 
    ' ---&---  Mensaje luego de importación
 
    MsgBox "Importación de datos satisfactoria"
End Sub

La parte que no funciona debe ser la que esta en negrita.

Así de entrada cerrar el fichero antes de pegar no me parece una buena idea, alguna vez me ha pasado que al cerrar el fichero lo copiado se me ha perdido antes de pegarlo.

Te adjunto el fichero con las macros un poco mas presentables. Por si te interesa.

Como no puedo probar la macro no te puedo decir más. Me falta de donde importar para ver que es lo que falla o posibles fallos.

Saludos.
\\//_
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