<p>Sub TongJi2()</p><p> '定义三个变量<br/> Dim i As Integer<br/> Dim k As Integer<br/> Dim TongJi As Integer</p><p> k = Application.Worksheets.Count '工作簿的工作表总数赋值给k<br/> TongJi = 0 '初始化TongJi</p><p> For i = 1 To k - 1 '用for next循环语句,将第一至倒数第二个工作表序号赋值给i(最后是总表,所以不算在内)<br/> With ThisWorkbook.Sheets(i) '用with语句表示第i个工作表(还记得之前的工作表表示方法吗?这里派上用场了)<br/> <font color="#ff0000">TongJi = TongJi + .[B2]</font> '迭代计算,Sheets(i)的TongJi = Sheets(i-1)的TongJi + Sheets(i)的[B2]<br/> End With '结束with<br/> Next i '下一个</p><p> Sheets("总表").[B1] = TongJi '将TongJi赋值给总表B1单元格</p><p> End Sub</p><p><font color="#ff3300">执行到红色的地方 就溢出了 是怎么回事呀?</font><br/></p>
<div class="msgheader">QUOTE:</div><div class="msgborder"><b>以下是引用<i>mxg825</i>在2007-11-23 15:50:00的发言:</b><br/><p>Sub TongJi2()</p><p> '定义三个变量<br/> Dim i As Integer<br/> Dim k As Integer<br/> Dim TongJi As Integer</p><p> k = Application.Worksheets.Count '工作簿的工作表总数赋值给k<br/> TongJi = 0 '初始化TongJi</p><p> For i = 1 To k - 1 '用for next循环语句,将第一至倒数第二个工作表序号赋值给i(最后是总表,所以不算在内)<br/> With ThisWorkbook.Sheets(i) '用with语句表示第i个工作表(还记得之前的工作表表示方法吗?这里派上用场了)<br/> <font color="#ff0000">TongJi = TongJi + .[B2]</font> '迭代计算,Sheets(i)的TongJi = Sheets(i-1)的TongJi + Sheets(i)的[B2]<br/> End With '结束with<br/> Next i '下一个</p><p> Sheets("总表").[B1] = TongJi '将TongJi赋值给总表B1单元格</p><p> End Sub</p><p><font color="#ff3300">执行到红色的地方 就溢出了 是怎么回事呀?</font><br/></p></div><p>关掉你所有的excel重新启动一下。在我2003这里运行没问题。2007没有试过。</p>