Tag: exception

为什么我在使用FormulaArray的时候总是收到COMexception

try { sheet1.get_Range("M34").FormulaArray = "=SUM(IF(Sheet2!D6:D122=M31,IF(Sheet2!P6:P122>0,Sheet2!I6:I122/SUMIFS(Sheet2!I:I,Sheet2!C:C,Sheet2!C6:C122,Sheet2!D:D,Sheet2!D6:D122)*ROUNDUP(SUMIFS(Sheet2!I:I,Sheet2!C:C,Sheet2!C6:C122,Sheet2!D:D,Sheet2!D6:D122)/Sheet2!Q3,0),0),0))"; } catch (COMException ex) { MessageBox.Show(ex.Message); } 任何人都知道为什么上面的代码抛出COMexception。 公式工作正常,如果我进入Excel并按Ctrl + Shift + Enter,但是当我的程序写入Excel,它会抛出一个exception。 我在我的程序中的其他地方使用Range.FormulaArray,它工作正常。 也许有人可以指出这个问题,因为我疯了,似乎其他人有同样的问题,但没有解决scheme在线。

区分Excel Interop操作引发的exception

我正在使用Microsoft.Office.Interop.Excel库从C#应用程序中将数据导出到Excel。 调用sheet.Cells[currentRow, 1])与一个无效的currentRow值,导致System.Runtime.InteropServices.COMException消息: "Exception from HRESULT: 0x800A03EC" 和ErrorCode -2146827284 但是,我已经收到完全相同的错误代码,订购Excel以保存到写保护文件。 有没有办法区分从Excel接收到的COMExceptions,所以我可以相应地处理它们? 我宁愿不把用户留在“使用Excel工作时出错,对不起,太糟糕了”。

Excel读取提供java.lang.StringIndexOutOfBoundsException

我试图用jxl读取一个excel文件。 它给StringIndexOutOfBoundsException 。我不知道为什么我得到这个代码。 public class TestExcelReader { public static void main(String args[]) throws BiffException, IOException{ File file=new File("D:\\TestExcel.xls"); Workbook workbook=Workbook.getWorkbook(file); \\Line number 14 Sheet sheet=workbook.getSheet(0); System.out.println("No of rows is "+sheet.getRows()); } } 我的例外: Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 68 at java.lang.String.checkBounds(Unknown Source) at java.lang.String.<init>(Unknown Source) at jxl.biff.StringHelper.getString(StringHelper.java:164) at jxl.read.biff.WriteAccessRecord.<init>(WriteAccessRecord.java:56) at […]

如何在不破坏对象的情况下停止VBAmacros

我写了一个VBA程序,它在Workbook_Open上创build一个将错误写入错误日志的文件stream。 如果我遇到一个致命的错误(因此需要暂停执行macros),程序将执行一个End语句,突然停止macros。 我知道这个解决scheme并不是一个理想的解决scheme,但是如果我深入了几个函数,我不能看到更好的方法来快速结束问题(也就是说,一个函数调用另一个函数调用另一个函数,第三个函数产生错误)。 退出发生错误的function只会影响该特定function,导致无效数据,意外单元值等的可能性。 但是这种方法会导致我另一个问题 – 当End执行时会销毁所有的对象,包括错误stream。 因此,当用户做了一些新的事情并且运行一个致命的错误时,他们得到了一个VBA运行时错误(91:Object …没有设置),因为代码写入了现在设置为Nothing.的文件streamNothing. 有没有更好的方法来结束macros(并因此避免错误后的意外行为),而不会丢失我的所有对象? 官方的VBA文档没有任何帮助。 提前致谢。

WinRT中的未处理exception问题

当我在代码中遇到一个exception时,它会一直抛出并一直回到app.gics文件。 如果在try / catch中引发exception的方法并不重要,它仍会回到App实例。 这是我正在尝试使用的方法: public static async Task Clear() { userSessionToken = string.Empty; var appdata = ApplicationData.Current; StorageFile file = await appdata.LocalFolder.GetFileAsync("parseSession"); try { await file.DeleteAsync(StorageDeleteOption.PermanentDelete); } catch (FileNotFoundException) { return; } } 每次我点击DeleteAsync方法,并且该文件不存在,我希望抛出和吞下exception。 相反,我的抓住从未受到打击。 它一直泡到app.gi文件。 public void InitializeComponent() { if (_contentLoaded) return; _contentLoaded = true; #if DEBUG && !DISABLE_XAML_GENERATED_BINDING_DEBUG_OUTPUT DebugSettings.BindingFailed += (sender, args) […]

org.apache.poi.POIXMLException:使用Libre Office更新.xls文件后POI API中的java.lang.reflect.InvocationTargetException

我正在阅读使用POI API的Excel,我使用下面的代码来阅读Excel文件。 public class ExcelWorkBook { private static ExcelWorkBook excelWorkBook = null; private static String filePath; private static XSSFWorkbook workbook; /** * This constructor used to initialize the {@link ExcelWorkBook} * @throws IOException */ private ExcelWorkBook() throws IOException { try { workbook = new XSSFWorkbook(getFile()); } catch (FileNotFoundException ex) { Logger.getLogger(ExcelWorkBook.class.getName()).log(Level.SEVERE, null, ex); } } […]

如何testing程序处理以不可预知格式存储的大量数据

我必须做的 我试图操纵一些存储在Excel文件中的大量数据(其中一个工作簿有多达150个电子表格)。 这些操作的结果可能会在数据库表中产生大约800.000行。 问题 存储在电子表格中的数据具有不可预知的格式。 生成这些电子表格的公司没有用于导出这些文件的固定/文档格式,有时会出现错误的数据。 例如,大多数年份被表示为“2009”,但有些情况下一年被表示为“20”。 其他例子,这些文件中的数据并没有真正规范化,所以我使用分隔符来分割某些单元格的值。 有时这些分隔符会改变。 有些事情是我无法预测的,只有在我的程序的一个已经进化的版本上运行了相当大一部分可用数据之后,才发现它们。 这个问题 在这种情况下,如何testing程序的正确性? 或者说,如何在没有运行整个可用数据的情况下实现相当稳定的产品版本? 如果出现某种意想不到的问题,我应该采取防御措施并抛出exception吗? 那么程序的主循环可能会捕获并logging它们并继续使用可用的数据? 这将产生一些处理过的数据,但这意味着在程序的后续迭代中,我必须检查以前的迭代(我不太喜欢)在数据库中已经存在的内容。 你怎么看? 你将如何解决这个问题?

Java中的Biffexception

当我尝试读取Java文件中的Excel文件时,会抛出“biffexception”。 这是什么意思? 我试图谷歌,但无法find一个合适的解释。 jxl.read.biff.BiffException: Unable to recognize OLE stream at jxl.read.biff.CompoundFile.<init>(CompoundFile.java:116) at jxl.read.biff.File.<init>(File.java:127) at jxl.Workbook.getWorkbook(Workbook.java:221) at jxl.Workbook.getWorkbook(Workbook.java:198) at Com.Parsing.ExcelFile.excel(Extract.java:20) at Com.Parsing.Extract.main(Extract.java:55)

为什么在更新Excel单元格多次时收到OleDbException?

我正在使用下面的代码来更新Excel文件中的单元格。 public bool WriteChange(string Filename, string SheetName, string Cell, string Value) { if(!System.IO.File.Exists(Filename)) { throw new System.IO.FileNotFoundException("File \"" + Filename + "\" could not be found"); } bool result = false; string ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Filename + ";Mode=ReadWrite;Extended Properties=\"Excel 8.0;HDR=NO;\""; string SQL = "UPDATE [" + SheetName + Cell + ":" + Cell […]

如何将excel数据读入向量表

对不起,即时通讯新的Java。 我已经将方法从JXL更改为Apache POI来读取excel文件。 现在即时通讯与Java代码挣扎。 我可以从我的vector dataholder的返回输出,它从行文件中列出所有的细节。 请,需要专家的指导。 任何帮助,将不胜感激。 我的Excel文件: Banklist.xlsx JSP代码 <jsp:useBean id="mySmartUpload" scope="page" class="com.jspsmart.upload.SmartUpload" /> <jsp:useBean id="ReadXLSXFile" scope="page" class="com.rexit.easc.ReadXLSXFile" /> if(sType.equalsIgnoreCase("READ_EXCEL")) { SimpleDateFormat timestampFormat = new SimpleDateFormat("yyyyMMdd"); String currDATE = timestampFormat.format(new Date()); mySmartUpload.initialize(pageContext); mySmartUpload.setTotalMaxFileSize(1000000); mySmartUpload.upload(); String upload_path = ""; FileInputStream is = new FileInputStream("/home/config.prop"); Properties prop = new Properties(); prop.load(is); upload_path = prop.getProperty("upload_path"); String […]