Tengo problemas con una macro que ya estaba terminada
Ya me habías ayudado con este código que era para eliminar los espacios en blanco de una columna que estaba pegando.
Sub LoadInfo()
Dim MyResultados As String 'donde guardo el nombre del libro de resultados
Dim MyInfo As String 'donde guardo el nombre del libro que voy a abrir
Dim InfoPath As String 'donde se guada la información de la ubicacion del libro de info
Dim arr As Variant
Dim i As Long
Set h1 = Sheets("Data")
Set h2 = Sheets("Temp")
Set h3 = Sheets("Base calculo")
If MsgBox("¿Desea actualizar la base de datos?", vbQuestion + vbYesNo, AddIn) = vbNo Then Exit Sub
Application.ScreenUpdating = False 'para que no se vea en pantalla la apertura del libro (tarda menos)
ClearData 'función para limpiar la información de Data
MyResultados = ThisWorkbook.Name
InfoPath = Application.GetOpenFilename 'display para abrir libro de info
Workbooks.Open Filename:=InfoPath 'abro el libro
MyInfo = ActiveWorkbook.Name
Muestra_Hojas
For Each hoja In ActiveWorkbook.Sheets
arr = hoja.Range("C1:F50")
For i = 1 To UBound(arr, 1)
arr(i, 1) = WorksheetFunction.Trim(arr(i, 1))
Next
h1.Range("C" & Rows.Count).End(3)(2).Resize(UBound(arr, 1), UBound(arr, 2)).Value = arr
Next
'Desde aqui se aplican la actualización del acumulado
u1 = h2.Range("A" & Rows.Count).End(xlUp).Row
h2.Range("A2" & ":E" & u1).Copy
u2 = h3.Range("A" & Rows.Count).End(xlUp).Row
h3.Range("A" & u2 + 1).PasteSpecial xlValues
h2.Range("F2" & ":AD" & u1).Copy
h3.Range("T" & u2 + 1).PasteSpecial xlValues
h3.Range("F2:S11").Copy
h3.Range("F" & u2 + 1).PasteSpecial xlPasteFormulas
Application.CutCopyMode = False
Workbooks(MyResultados).Activate
Worksheets("Acumulado").Activate 'para volver a la hoja de resultados
Application.DisplayAlerts = False 'para que no salte cuadro de diálogo de clipboard
Workbooks(MyInfo).Close SaveChanges = False 'cierro el libro de info
Application.ScreenUpdating = True
End Sub
Private Function ClearData()
Worksheets("Data").Range("C1:F20000").ClearContents
End Function
Private Function Muestra_Hojas()
Dim numero As Byte
numero = Sheets.Count
For i = 1 To numero
Sheets(i).Visible = True
Next
End FunctionTodo me funciona perfectamente, sin embargo, cuando estaba cargando una información, luego de cargarla, me di cuenta que uno de los textos estaba mal escrito, entonces fui al archivo que estoy subiendo y lo modifiqué, borre la carga que había hecho para volverlo a subir y ahí me dio este error


Lo único que estoy haciendo es corregir el nombre en una de las celdas de la columna C en varias pestañas, no hago más nada. No entiendo por qué me da error solo con corregir la palabra.
1 respuesta
Respuesta de Dante Amor
2
