我正在開發項目中的excel add。如何將生成的excel表單移動到特定的第一和第二位置
我從數據庫表中動態生成Excel表。
現在我想移動位置第1和第2位的特定Excel表。
我試着像以下這是對Office版本2010
正常工作,但不工作的Office版本2013
我應該爲辦公室2013嗎?
如果活性片來「MYFirst」我使用以下代碼
Worksheet hiddenSheet;
hiddenSheet = (Worksheet)Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
hiddenSheet.Move(Type.Missing, Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets[Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets.Count - 3]);
// int count = Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets.Count; // in office version 2010 count comes 4 so (4-3=1)
如果活性片來「MYSecond」我使用下面的代碼移動這對第一位置移動這對第一位置
Worksheet hiddenSheet;
hiddenSheet = (Worksheet)Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets.Add(Type.Missing, Type.Missing, Type.Missing, Type.Missing);
hiddenSheet.Move(Type.Missing, Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets[Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets.Count - 3]);
// int count = Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets.Count; // in office version 2010 count comes 5 so (5-3=2)
我怎樣才能做到這一點?或如何找到其中的Office版本目前正在安裝,以便直接進行計數差異,並指定位置直接
MSDN給出了這樣的代碼來表移動到最後的位置 http://msdn.microsoft.com/en-us/library/xyhf0ksb.aspx
int totalSheets = this.Application.ActiveWorkbook.Sheets.Count;
((Excel.Worksheet)Application.ActiveSheet).Move(
this.Application.Worksheets[totalSheets]);
如何移動表到第一位?
如果您使用新的工作簿,會出現什麼情況?我認爲Excel 2010有3張,2013年只有1張。那裏有沒有「圖表」? – 2014-10-01 08:34:18
恰好2010年有3個,2013年有1個因爲它無法移動必須改變我的MOVE SHEET表達式。但是如何?這是待辦事項的好方法?順便說一句,每當我正在創建一個新的工作簿,這將創建工作簿從數據庫 – Neo 2014-10-01 08:37:47
如果你想將其移動到第一個位置,然後嘗試'hiddenSheet.Move(Before:Globals.ThisAddIn.Application.ActiveWorkbook.Sheets [1]) ;' – 2014-10-01 09:18:48