Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 我的saveas代码创建了一个需要修复的文件_Excel_Vba - Fatal编程技术网

Excel 我的saveas代码创建了一个需要修复的文件

Excel 我的saveas代码创建了一个需要修复的文件,excel,vba,Excel,Vba,代码如下: Sub saveAsXlsx() Dim myPath As String Application.DisplayAlerts = False myPath = Application.ActiveWorkbook.Path Worksheets(Array("User")).Copy ActiveWorkbook.SaveAs Filename:=myPath & "\VUONGJO.xlsx" ActiveWorkbook.

代码如下:

Sub saveAsXlsx()
    Dim myPath As String
    Application.DisplayAlerts = False
    myPath = Application.ActiveWorkbook.Path
    Worksheets(Array("User")).Copy
    ActiveWorkbook.SaveAs Filename:=myPath & "\VUONGJO.xlsx"
    ActiveWorkbook.Close
    Application.DisplayAlerts = True
End Sub
非常简单的东西。将.xlsm另存为.xlsx文件

保存的信息是正确的。唯一的问题是,当您打开.xlsx时,它会显示修复文件并列出:

已删除功能:从/xl/worksheets/sheet1.xml部分进行数据验证

但是当我尝试使用ActiveWorkbook.Cells.Validation.Delete时,它不起作用


我不想从原件中删除该值,但我想保存一份没有该值的副本,我被难住了

您是否使用与运行此宏所用版本不同的excel版本打开?另外,
工作表(数组(“用户”))是什么。复制
在这里做什么?在saveas方法XlFileFormat.xlopenxmlworkbook中指定文件格式。此外,请尝试从原始文件中删除数据验证,保存文件,将其添加回并重新运行。有时,文件中的某些损坏会导致这些问题。如果此注释或其他注释无效,请尝试从头开始重新构建工作簿。(我最近不得不这么做。)数组用户部分是因为我在xlsm中复制工作表上的信息,并试图将信息保存为XLSX。实际上,这不是代码问题,您的问题和建议只是帮助我解决了这个问题。我需要新复制的文件中引用的条件格式列表,而不仅仅是包含数据的工作表