我正在使用多个Excel文件的vb6应用程序。
问题出现在这一行:
.Hyperlinks.Add Anchor:=.Range("C12"), Address:=MainForm.txt_report, TextToDisplay:="See Report"
当我运行该程序时,它可以正常运行。在这里,我得到一个"运行时错误13,输入错误匹配"。我按下调试按钮,然后我什么都不做,然后按下"继续执行"按钮,一切正常。链接将正确添加到工作表中。
我真的不知道发生了什么。似乎vb需要在执行该行之前等待片刻。我尝试在该行之前使用MsgBox()
并且错误消失了。但是,如果我使用wait
或sleep
功能,问题仍然存在。
我在谷歌搜索过但没有找到任何有用的东西。
[编辑:] 我认为这段代码导致了问题:
这会导致错误发生:
DoEvents
For i = 1 To cant_filas
col = oDataBaseSheet.Range(WS.Cells(i, 1)).Column
With temporal_sheet
.Range(.Cells(1, col), .Cells(last_row, col)).Copy
End With
oTemplateSheet.Range(WS.Cells(i, 2).Value).PasteSpecial
Next
这解决了问题:
For i = 1 To cant_filas
col = oDataBaseSheet.Range(WS.Cells(i, 1)).Column
With temporal_sheet
.Range(.Cells(1, col), .Cells(last_row, col)).Copy
End With
oTemplateSheet.Range(WS.Cells(i, 2).Value).PasteSpecial
Next
DoEvents