Office中国论坛/Access中国论坛

标题: 这个代码错在那里 [打印本页]

作者: jzyjs8680    时间: 2013-11-12 21:15
标题: 这个代码错在那里
这个代码错在那里  请老师看看



作者: roych    时间: 2013-11-17 17:42
改成怎样试试看?
  1. Sub 拆分统计()

  2.   'Sheet3.Range("A3:H8000").Select
  3.   'Selection.ClearContents
  4.   a = Sheet1.[A65536].End(3).Row
  5.   For i = 5 To a
  6.   b = Sheet3.[A65536].End(3).Row
  7.    
  8.   If Sheets("sheet1").Cells(i, 10) = [a1] Then
  9. '数组可能不太支持这个属性。
  10.   Sheet3.Range("a" & b + 1).Resize(, 8) = Sheet1.Range("a" & i).Resize(, 8).Value
  11. End If
  12. Next
  13. End Sub
复制代码

作者: jjjnk    时间: 2014-2-4 15:15
是因为在第157行 有错误值 #N/A   
作者: jjjnk    时间: 2014-2-4 15:16
把公式修改一下 就可以了  忽略错误值
作者: jjjnk    时间: 2014-2-4 15:20
公式改成 =IFERROR(VLOOKUP(A157,物料与人!A$1:B$1063,2,0),"") 就没有问题了
作者: jjjnk    时间: 2014-2-6 15:14
本帖最后由 jjjnk 于 2014-2-6 15:15 编辑

Sub 拆分统计()

  'Sheet3.Range("A3:H8000").Select
  'Selection.ClearContents
    On Error Resume Next
  a = Sheet1.[A65536].End(3).Row
  For i = 5 To a
  b = Sheet3.[A65536].End(3).Row
   
  If Sheet1.Cells(i, 10) = [A1] Then
  Sheet3.Range("a" & b + 1).Resize(, 8) = Sheet1.Range("a" & i).Resize(, 8).Value
End If
Next
End Sub
加一句 ON ERRRO RESUME NEXT  也可以     但是请注意在157行有错误 需要注意

  1. Sub 拆分统计()

  2.   'Sheet3.Range("A3:H8000").Select
  3.   'Selection.ClearContents
  4.     On Error Resume Next
  5.   a = Sheet1.[A65536].End(3).Row
  6.   For i = 5 To a
  7.   b = Sheet3.[A65536].End(3).Row
  8.    
  9.   If Sheet1.Cells(i, 10) = [A1] Then
  10.   Sheet3.Range("a" & b + 1).Resize(, 8) = Sheet1.Range("a" & i).Resize(, 8).Value
  11. End If
  12. Next
  13. End Sub
复制代码





欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3