我用excel的宏录制了一段复制的代码,在程序运时,登陆第一次运行没有问题,第二次运行就会提示: 
实时错误'91' 
对象变量或with块变量未设置 
但当退出程序,重新登陆还是第一次可以运行 
是不是语句上需要关闭什么东西 
Set ex = CreateObject("Excel.Application") 
Set exwbook = Nothing 
Set exwbook = ex.Workbooks().Add 
Set exsheet = Nothing 
Set exsheet = exwbook.Worksheets("sheet1") 
......
exsheet.Range("A1:I12").Select    '复制 
Selection.Copy 
exsheet.Range("A" & i + 22).Select 
ActiveSheet.Paste

解决方案 »

  1.   

    Set ex = CreateObject("Excel.Application") 
    Set exwbook = Nothing  
    Set exwbook = ex.Workbooks().Add 
    Set exsheet = Nothing 
    Set exsheet = exwbook.Worksheets("sheet1") 
    ...... 
    exsheet.Range("A1:I12").Select    '复制 
    Selection.Copy 
    exsheet.Range("A" & i + 22).Select 
    ActiveSheet.Paste
    你红色的两句应该放在最后面吧,程序完成时销毁,你在之前销毁干啥用啊?
    Set ex = CreateObject("Excel.Application") 
    Set exwbook = ex.Workbooks().Add 
    Set exsheet = exwbook.Worksheets("sheet1") 
    ...... 
    exsheet.Range("A1:I12").Select    '复制 
    Selection.Copy 
    exsheet.Range("A" & i + 22).Select 
    ActiveSheet.Paste
    Set exwbook = Nothing 
    Set exsheet = Nothing
      

  2.   

    Set ex = CreateObject("Excel.Application") 
    Set exwbook = ex.Workbooks().Add 
    Set exsheet = exwbook.Worksheets("sheet1") 
    ...... 
    exsheet.Range("A1:I12").Select    '复制 
    Selection.Copy 
    exsheet.Range("A" & i + 22).Select 
    ActiveSheet.Paste
    exwbook.save
    ex.quit
    Set exsheet = Nothing 
    Set exwbook = Nothing