2014-09-01 22 views
0

我想知道是否有人可以幫我處理代碼。我幾乎在那裏,但沒有完全。複製大量表單並刪除幾張

Sub col_export_Klikken() 

Dim wb As Workbook 
countsheets= ThisWorkbook.Sheets.Count 

Set wb = Workbooks.Add 
For nsheets = 1 To countsheets 
    ThisWorkbook.Sheets("sheetname").Copy After:=wb.Sheets(1) 
Next nsheets 
ThisWorkbook.Sheets("mainuser").delete 
ThisWorkbook.Sheets("maincode").delete 

wb.SaveAs "C:\Users\not\Desktop\wb2.xlsx" 
End Sub 

此代碼無法使用。但我希望在你的幫助下,我可以弄清楚如何將文件保存在文件中並刪除幾張表。 我面臨的第一個問題是在引號內使用sheetname。這是非常靜態的,並且sheetname將會改變繼續。每次我生成一個代碼,我都會得到很多工作表。

我想讓此代碼工作就像它複製工作簿中的所有工作表。之後,它將刪除一些表單名稱(這些表單是靜態的,因此可以輕鬆完成)。

回答

1

如果你只是想每一個表,你可以簡單地使用複製:

ThisWorkbook.Sheets.Copy after:=wb.Sheets(1) 

因此不必通過他們來算表和循環。或者,如果您想循環遍歷每張紙,以便可以運行一些檢查來測試您是否想要複製每張紙,則可以將您的參考更改爲:

ThisWorkbook.Sheets(nsheets).Copy After:=wb.Sheets(1)