2011-09-13 67 views

回答

0

MSDN知道:

((Excel.Worksheet)this.Application.ActiveWorkbook.Sheets[4]).Delete(); 

Globals.Sheet1.Delete(); 

在這裏看到:How to: Delete Worksheets from Workbooks

+0

知名度片: CS0103:名稱'Globals'在當前上下文中不存在「。請澄清我.. 而且當我運行在一個以上時,我也得到錯誤爲「CS1061:'System.Web.HttpApplicationState'不包含'ActiveWorkbook'的定義和沒有擴展方法'ActiveWorkbook'接受可以找到'System.Web.HttpApplicationState'類型的第一個參數(是否缺少使用指令或程序集引用?)「 –

+1

以及如果嘗試第一個選項會怎麼樣?你讀過鏈接的文章了嗎? –

+0

請參閱鏈接http://stackoverflow.com/questions/7376964/how-to-merge-two-excel-workbook-into-one-workbook-in-c?answertab=active#tab-top 這裏它是通過合併現有的工作簿動態生成工作簿,但是當它生成時,它具有除合併工作表之外的3個默認工作表。所以在這裏我需要刪除默認的三張表。請幫我解決這個問題...... –

3

您可以撥打.Delete() method,這樣的:

Globals.Sheet1.Delete(); 

更新,根據您的評論:

Excel._Worksheet ws = (Excel._Worksheet)app.Workbooks[i].Worksheets[j]; 
ws.Delete(); 
+0

當我運行這個時,它會拋出一個錯誤,因爲「編譯器錯誤消息:CS0103:名稱'Globals'在當前上下文中不存在」。請澄清我... –

+0

@Tripati Subudhi'Globals'是指您的工作簿,Sheet1--是第一張工作表。你應該添加你自己的變量來使這個代碼工作。另請參閱MSDN。 – VMAtm

+0

請參閱鏈接http://stackoverflow.com/questions/7376964/how-to-merge-two-excel-workbook-into-one-workbook-in-c?answertab = active#tab-top 這裏它是通過合併現有的工作簿動態生成工作簿,但是當它生成時,它具有除合併工作表之外的3個默認工作表。所以在這裏我需要刪除默認的三張表。 –

0

參照你的例子(How to merge two excel workbook into one workbook in c#?),其中應用是你類型的變量Excel.Application,你應該寫這樣的事情:

for (int i = 1; i <= 3; i++) 
    ((Excel.Worksheet)app.ActiveWorkbook.Sheets[1]).Delete(); 

PS:在我看來,Worksheets集合從1開始索引,而不是0,但我不確定,現在無法檢查。如果它不爲我從0工作,值儘量2.

2

我希望這個代碼將幫助您:

app.DisplayAlerts = false; 
worksheet.Delete(); 
app.Displayalerts = true; 

其中應用是你XlsApplication。

0
Dim s1 as Excel.Worksheet 
s1 = wb.Sheets("Sheet1") 
s1.Visible = Excel.XlSheetVisibility.xlSheetVisible 
s1.Delete() 

您需要更改知名度,因爲當我運行這一點,它拋出一個錯誤「編譯器錯誤信息不能刪除設置爲Excel.XlSheetVisibility.xlSheetVeryHidden

相關問題