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 Function
Todo 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