如何捕获错误"文件未完全加载"

时间:2015-06-01 01:57:19

标签: excel vba excel-vba error-handling

我有一个打开文本文件的代码。它包含多个超过Excel限制的行。手动打开它时,会出现一条提示,说明"文件未完全加载"但是在宏观中,我没有看到提示。

我想要做的就是捕捉到这个错误。即使启用了我的宏的显示警报,仍然没有捕获错误。

Ext.onReady(function(){
   var pb = Ext.create('Ext.ProgressBar', {
      margin: 50,ui:'default'
   });
   // Wait for 5 seconds, then update the status el (progress bar will auto-reset)
   pb.wait({
      interval: 500, //bar will move fast!
      duration: 50000,
      increment: 15,
      text: "Hi, I've got a custom UI...",
      scope: this,
      fn: function(){
         p.updateText('Done!');
      }
   });
   var pa = Ext.create("Ext.panel.Panel", {
      title: "I'm a regular 'default' UI Panel",
      width: 500,
      items: pb, // put the progressbar in our panel
      floating: true,
      renderTo: Ext.getBody(),
      closable: true
   })
})

这是我的代码的结构。

1 个答案:

答案 0 :(得分:1)

为什么不在每次点击1M行时将流文件流入并移动到下一个标签?

我把它一起扔给你,原谅那里的Citrix系列(我需要它进行测试,如果你在那个环境中就把它留下来)。

Sub BigFile()
Dim myFile As String, textline As String, X As Long
'myFile = "\\Client\C$\Temp\YourBigFile.txt" 'Silly Citrix syntax
myFile = "C:\Temp\YourBigFile.txt" 'Normal syntax
Open myFile For Input As #1
Do Until EOF(1)
    X = X + 1
    If X = 1000000 + 1 Then
        Sheets.Add
        X = 1
    End If
    Line Input #1, textline
    Range("A" & X).Formula = textline
Loop
Close #1
End Sub

这样您就不需要测试错误,因为它不会成为错误。