我编写的EXCEL VBA程序进入死循环 excel vba 这组代码本来应该进入死循环的,为什么我的...
Excel vba\u7a0b\u5e8f\u8fdb\u5165\u6b7b\u5faa\u73af\uff0c\u600e\u4e48\u80fd\u5f3a\u5236\u7ec8\u6b62\u4e00\u79cd\u662f\u6309ESC \u770b\u770b\u80fd\u4e0d\u80fd\u505c\u6b62\uff0c\u4e0d\u80fd\u7684\u8bdd\u5c31\u5f3a\u5236\u5173\u95edExcel\u7a0b\u5e8f\u5427\u3002
\u4e3a\u4e86\u9632\u6b62\u9012\u5f52\u5faa\u73af\uff0c\u7cfb\u7edf\u4e0d\u5141\u8bb8200\u6b21\u3002
当for循环到next时,tjm自动+1,注意你的语句:在循环过程中,如果Cells(5, tjm) 为空,你将tjm-2
然后又将tjm+1
如果Cells(5, tjm) 为空,在你-2又两次+1后,你的程序成了:
for tjm=16 to 45
tjm=tjm-2
tjm=tjm+1
next
tjm永远是原来的值,自然就死了。
看这一行
Do While Sheets("sheet1").Cells(tjl, 2) = ""
看起来应该改为
Do While Sheets("sheet1").Cells(tjl, 2) > ""
因为你在第6 行开始的第2列,大部分是空白,那就应该只处理有数据的行(即第2列不是空白的), 直到第2列是空白的为止。
扩展阅读:Excel表格制作 ... vba编程代码宝典 ... vba入门实例 ... vb基础编程100例 ... vba编程必背50个程序 ... 在vba编程中增加工作簿 ... create pivotchart vba ... vba电子书免费下载 ... 学习excel vba最好的书 ...