Excel 找不到要打印的内容
Excel can't find anything to print
我正在开发一个需要导出数据的应用程序。我将此数据导出到 JSON、数据库,然后在 excel.
中创建证书
导出到 excel 和 excel 文件创建工作完美,但我无法打印 excel。我从我的应用程序 (VB.NET) 和 VBA 尝试过(检查我的应用程序是否有问题),但都失败了。如果我使用 excel 打开文件,尽管设置了 PrintRange,但我无法打印它并且看不到预览。
我总是
"Excel couldn't find sth to print"
我尝试打印工作簿、sheet 和一个范围,但总是一样。我也尝试设置 worksheet.PageSetup.PrintArea
和相同。尝试 ExportAsFixedFormat
也不行。我还尝试将所有已安装的打印机设置为默认打印机,但没有任何设置,每台打印机都失败了。
仅此文件会出现这种情况,任何其他文件打印都不会出现问题。
如果我打开文件——转到打印——也会看到 "Nothing to print" 而不是预览,尽管设置了打印范围。
现在,如果我点击一个单元格,写某事。并删除它或进行任何交互,然后我就可以看到预览并打印文件了。
如果我现在保存工作文件并尝试在一个简单的应用程序中打开文件并打印它,就会出现错误消息。如果我在 excel 中重新打开文件,我将不会再次看到预览,并且必须与文件交互才能打印。
我已经尽我所能,也疯狂地搜索,但一切都奏效了。
我希望有人遇到过同样的问题并且可以帮助我,或者只是知道我做错了什么或者我的 excel 文件有什么问题,因为这是我生命中的第一次(并且与 excel) 一起工作很多,我看到了这条消息。
导出代码有点长,所以我没有贴在这里,但它是这样的:
Public Shared Function ExportCalibrationAsync(pressureCalibration As PressureCalibration, filePath As String, fileName As String, excelTemplate As Byte()) As Task 'TODO:Refactor...Not use 2.dots
Return Task.Run(Sub()
CheckFileName(fileName)
Dim fullPath = Path.Combine(filePath, fileName)
Dim tempFileName = Path.GetTempFileName()
Dim tempFullPath = Path.Combine(filePath, tempFileName)
Dim excel = New Excel.Application()
Dim row = 1
'Write the passed excel template to a tempFile
My.Computer.FileSystem.WriteAllBytes(tempFullPath, excelTemplate, False)
Dim excelWorkbooks = excel.Workbooks
'Add template workbook to actual workbook
Dim excelWorkbook As Excel.Workbook = excelWorkbooks.Open(tempFullPath)
'////////////
'////Code to Export data to excel
'////////////
'//ExportAsFixedFormat or Print doesn't work and
'//MsgBox pops up with "Excel could not find anything to print"
excelWorkSheet.PageSetup.PrintArea="$A:$G"
excelWorkSheet.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF,filePath,XlFixedFormatQuality.xlQualityStandard)
excelWorkbook.SaveAs(fullPath)
excelWorkbook.Close()
excel.Application.Quit()
excel.Quit()
File.Delete(tempFullPath)
GC.Collect()
GC.WaitForPendingFinalizers()
GC.Collect()
GC.WaitForPendingFinalizers()
Marshal.ReleaseComObject(calibrationChartObject)
我在这个 sheet 中有一个图表,但我认为图表不是问题,因为我可以使用相同的代码打印其他带有图表的文件。
我终于(2 周后)找到了解决方案,至少对我有用。
我一直保存激活页面布局视图的文件。照片中间的那个。
今天我又在测试了,我决定保存激活正常布局,瞧,它起作用了!!!
我已经检查过,这绝对是解决方法...如果我在任何文件中激活页面布局,请保存并尝试导出它..."Excel couldn't find anything to print"。
这个错误真的很奇怪(至少对我来说)。如果有人知道这是否有原因,请告诉我...我认为这可能是一个小错误。
我有同样的问题。视图已经是普通布局。
我发现问题出在打印设置上:
- 活动 sheet
- 打印页面
select sheet 打算打印出来,确保它是 "active sheet" in 打印选项。
不要将页面视为 sheet。页面是输出。
如果从当前sheet打印出来只有1页,尤其是当缩放设置为"fit sheet to 1 page"时,输出不会超过1页,并尝试打印页面从2开始肯定会出现这个错误。
我第一次遇到同样的错误。我意识到我已经将工作簿中的一个工作表更改为仅打印四页中的第四页,并且相同的设置显然适用于其他没有四页的工作表。清除页码(第 4 页,共 4 页)解决了问题。
我正在开发一个需要导出数据的应用程序。我将此数据导出到 JSON、数据库,然后在 excel.
中创建证书导出到 excel 和 excel 文件创建工作完美,但我无法打印 excel。我从我的应用程序 (VB.NET) 和 VBA 尝试过(检查我的应用程序是否有问题),但都失败了。如果我使用 excel 打开文件,尽管设置了 PrintRange,但我无法打印它并且看不到预览。
我总是
"Excel couldn't find sth to print"
我尝试打印工作簿、sheet 和一个范围,但总是一样。我也尝试设置 worksheet.PageSetup.PrintArea
和相同。尝试 ExportAsFixedFormat
也不行。我还尝试将所有已安装的打印机设置为默认打印机,但没有任何设置,每台打印机都失败了。
仅此文件会出现这种情况,任何其他文件打印都不会出现问题。
如果我打开文件——转到打印——也会看到 "Nothing to print" 而不是预览,尽管设置了打印范围。
现在,如果我点击一个单元格,写某事。并删除它或进行任何交互,然后我就可以看到预览并打印文件了。
如果我现在保存工作文件并尝试在一个简单的应用程序中打开文件并打印它,就会出现错误消息。如果我在 excel 中重新打开文件,我将不会再次看到预览,并且必须与文件交互才能打印。
我已经尽我所能,也疯狂地搜索,但一切都奏效了。
我希望有人遇到过同样的问题并且可以帮助我,或者只是知道我做错了什么或者我的 excel 文件有什么问题,因为这是我生命中的第一次(并且与 excel) 一起工作很多,我看到了这条消息。
导出代码有点长,所以我没有贴在这里,但它是这样的:
Public Shared Function ExportCalibrationAsync(pressureCalibration As PressureCalibration, filePath As String, fileName As String, excelTemplate As Byte()) As Task 'TODO:Refactor...Not use 2.dots
Return Task.Run(Sub()
CheckFileName(fileName)
Dim fullPath = Path.Combine(filePath, fileName)
Dim tempFileName = Path.GetTempFileName()
Dim tempFullPath = Path.Combine(filePath, tempFileName)
Dim excel = New Excel.Application()
Dim row = 1
'Write the passed excel template to a tempFile
My.Computer.FileSystem.WriteAllBytes(tempFullPath, excelTemplate, False)
Dim excelWorkbooks = excel.Workbooks
'Add template workbook to actual workbook
Dim excelWorkbook As Excel.Workbook = excelWorkbooks.Open(tempFullPath)
'////////////
'////Code to Export data to excel
'////////////
'//ExportAsFixedFormat or Print doesn't work and
'//MsgBox pops up with "Excel could not find anything to print"
excelWorkSheet.PageSetup.PrintArea="$A:$G"
excelWorkSheet.ExportAsFixedFormat(XlFixedFormatType.xlTypePDF,filePath,XlFixedFormatQuality.xlQualityStandard)
excelWorkbook.SaveAs(fullPath)
excelWorkbook.Close()
excel.Application.Quit()
excel.Quit()
File.Delete(tempFullPath)
GC.Collect()
GC.WaitForPendingFinalizers()
GC.Collect()
GC.WaitForPendingFinalizers()
Marshal.ReleaseComObject(calibrationChartObject)
我在这个 sheet 中有一个图表,但我认为图表不是问题,因为我可以使用相同的代码打印其他带有图表的文件。
我终于(2 周后)找到了解决方案,至少对我有用。
我一直保存激活页面布局视图的文件。照片中间的那个。
今天我又在测试了,我决定保存激活正常布局,瞧,它起作用了!!!
我已经检查过,这绝对是解决方法...如果我在任何文件中激活页面布局,请保存并尝试导出它..."Excel couldn't find anything to print"。
这个错误真的很奇怪(至少对我来说)。如果有人知道这是否有原因,请告诉我...我认为这可能是一个小错误。
我有同样的问题。视图已经是普通布局。
我发现问题出在打印设置上: - 活动 sheet - 打印页面
select sheet 打算打印出来,确保它是 "active sheet" in 打印选项。 不要将页面视为 sheet。页面是输出。
如果从当前sheet打印出来只有1页,尤其是当缩放设置为"fit sheet to 1 page"时,输出不会超过1页,并尝试打印页面从2开始肯定会出现这个错误。
我第一次遇到同样的错误。我意识到我已经将工作簿中的一个工作表更改为仅打印四页中的第四页,并且相同的设置显然适用于其他没有四页的工作表。清除页码(第 4 页,共 4 页)解决了问题。