14 excel vba records excel-vba
我几乎肯定我将不得不创建一个新的excel文件,但至少在这里我得到一些想法是什么问题的根源.
我的excel文件经常出现以下错误:
Excel在'filename.xlsm'中找到了不可读的内容.你想恢复这个工作簿的内容吗?如果您信任此工作簿的来源,请单击"是".
所以我这样做.文件打开后显示为已修复:
删除记录:从/xl/worksheets/sheet10.xml部分排序.
细节是我甚至没有sheet10
它是一个充满自定义对象的大型excel文件.但是我没有数据库连接或自动过滤,因此无法与使用数组的自动筛选条件(错误) - 太大的字符串相关联?或xlsx错误:"删除记录:/xl /workbook.xml部分的命名范围",当试图解决错误时.
有人知道发生了什么事吗?
请提前
小智 26
在保存工作簿之前尝试清除排序.当这件事发生在我身上时,我把我的纸张参考文件混淆了,所以排序没有被清除
Sheets(yoursheetname).Sort.SortFields.Clear
Run Code Online (Sandbox Code Playgroud)
Jul*_*usz 10
我恐怕无法解释发生了什么,但我有过几次类似的经历 - 总是使用XLSM文件.在最新的案例中,我了解到Excel不喜欢使用两次相同的范围名称,当定义为Worksheet范围名称时(我们假设这样使用它是安全的).
我们的故障排除路径是
通常步骤1解决了问题,但步骤3从未让我们失望.
惊人的,
这个问题已经快把我逼疯了!
看来,保存为 xlsb(二进制)文件加上添加排序字段的清除似乎已经解决了我的问题。
我将以下代码添加到 BeforeClose 子项中,它似乎很快清除了字段,更改了我的仪表板并提示保存。
保存的 xlsb 文件大小超过 mb,并且加载速度似乎更快一些!
感谢您的指点和支持!
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Sht As Worksheet
' Clear all Sort Fields prior to Save & Exit
For Each Sht In Application.Worksheets
Sht.Sort.SortFields.Clear
Next Sht
aa1_Dashboard1.Select
aa1_Dashboard1.Activate
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
72621 次 |
| 最近记录: |