早上好,
我在通过.NET创建的Excel工作表中发生了一件非常奇怪的事情。
我加载现有工作簿
Dim _xlApp As New Excel.Application
Dim _xlWorkbook As Excel.WokBook = _xlApp.Workbooks.Open(_templateFileName)
在填充之前将其设置为可见(用于调试目的)
_xlApp.Visible = True
然后我继续填充现有模板。
Private Sub GenerateOceanFreightGrid()
Dim columnCount As Integer = 4 ' _standardColumnCount
Dim columnInsertPosition As Integer = 5
If MyBooleanValue() Then
_xlSheet.Columns(4).Insert()
_xlSheet.Cells(7, 4) = "My Header Value"
columnInsertPosition += 1
columnCount += 1
End If
当我在“private sub gen.”行上设置一个断点,并逐行通过代码时,它会为声明的每个变量插入一个新列,因此在这种情况下,它会在它甚至到达“if myBooleanValue()…”行之前插入两列(我可以观察它实际发生的情况,因为Excel应用程序可见)。但是,如果我不设置断点,只让代码直接运行,就不会发生这种情况。
没有多线程发生,或者其他任何我怀疑对代码有影响的事情发生。
我最明显的解决方法是不设置断点,我只是想知道是否有人以前见过这种情况,原因是什么?
谢谢