如果没有阻止,我会继续“结束”错误

时间:2013-07-13 22:26:16

标签: vba if-statement

我的数据集全部在A列,我正在尝试在第2行和第300行之间读取。我需要读取每个单元格以查看其中是否包含信息。如果它没有任何信息,那么它将转到下面的下一个单元格。当它确实在单元格中找到信息时,它需要创建一个新的工作簿并将该单元格值用作工作簿名称的标题并循环到第300行。工作簿需要保存在我的dekstop中名为test的文件夹中。如果没有阻止,我会继续“结束”错误

Sub blair() 
      Dim strName As String
      strName = ActiveCell.Value

      For ptr = 2 To 300
          If Cells(ptr, "a") = vbNullString Then
              Cells(ptr, "a") = Cells(ptr, "a").Offset(-1, 0)
          Else
              Set NewBook = Workbooks.Add
              With NewBook
                  .SaveAs Filename:="C:\Users\Marco\Desktop\test\" & strName & ".xls"
                  .Close
          End If
      Next
End Sub

1 个答案:

答案 0 :(得分:5)

发生错误是因为您没有使用正确的With语句结束End With段。 VBA将End解释为结束With段,然后继续打开2 Ifs,但没有关闭。