2013-07-13 66 views
0

我的數據集都在列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 
+0

我修復了代碼的縮進,這有助於查看它錯誤的位置。 – ApplePie

回答

5

的錯誤是因爲你還沒有結束With段用適當的End With聲明。 VBA將End解釋爲結束With細分受衆羣,然後繼續在沒有關閉的情況下打開2 Ifs