我想捕獲在工作簿中創建現有表單的副本時觸發的事件。我的意圖是檢查工作簿中存在多少份工作表,因此限制副本數量。VSTO中的表單複製事件
回答
沒有工作表添加事件。您需要使用Application.SheetActivate
或Workbook.SheetActivate
或Worksheet.Activate
事件。這裏是一個C#示例
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
this.Application.SheetActivate +=
new Excel.AppEvents_SheetActivateEventHandler(
Application_SheetActivate);
}
void Application_SheetActivate(object Sh)
{
// Your code here to check if the copy is a duplicate or not
}
這個事件處理程序是我所知道的。問題是:爲了找到創建的新工作表,必須具備的邏輯是現有工作表的副本。其中一種方法是迭代工作表集合並匹配當前工作表的名稱。這裏新創建的工作表的名稱起着重要的作用。例如,如果已經創建副本的紙張具有名稱「Sheet1」並且創建了一個是「Sheet1(1)」並且存在名稱爲Sheet1(2)的另一個紙張。現在的問題是如何確定哪個是創建的工作表的源副本。 –
一個假設可能是工作簿中的所有工作表必須具有唯一且有意義的名稱。通過這種方式,可以藉助工作表名稱屬性和字符串操作來實現解決方案。不是嗎? –
不,您不會使用工作表名稱,而是比較工作表的內容。如果你搜索谷歌,你會發現很多代碼來做一個表格比較。 –
- 1. VSTO Excel.DropDown事件
- 2. Excel VSTO WorkbookNew事件
- 3. 如何檢測PowerPoint VSTO中的重複幻燈片事件?
- 4. VSTO郵件發送事件
- 5. 事件複製
- 6. JQuery的 - 我不能複製我的表單事件
- 7. VSTO Ribbon Button右鍵事件
- 8. VSTO Word post保存事件
- 9. 在Excel VSTO中插入行事件?
- 10. Filebeat複製事件
- 11. 複製onclick事件
- 12. FileSystemWatcher複製事件
- 13. VSTO Outlook 2007加載項上下文菜單CommandBarButton單擊事件
- 14. jQuery事件 - 單擊時將表格行復制到HTML輸入
- 15. 錶行單擊事件和複選框
- 16. VSTO部署清單(.vsto)
- 17. 「讀」事件的MailItem 2007 VSTO VB.NET
- 18. VSTO獲得Click事件發件人
- 19. CDC表和事務複製
- 20. 如何使用VB在Excel 2007 VSTO中生成單元格單擊事件?
- 21. 事件處理程序添加到右鍵菜單子菜單中VSTO Vb.net
- 22. 在VSTO單詞插件中調試TrustNotGrantedException
- 23. 複選框單擊事件中的事件冒泡問題
- 24. JavaScript的「複製」 HTML表單
- 25. 單擊事件不復制在複選框
- 26. AppendTo複製由resize事件
- 27. Javascript Fullcalendar - 複製事件
- 28. jQuery事件複製功能
- 29. 事務文件複製
- 30. 如何將listobject的numberformat複製到VSTO中的另一個listobject
VSTO - VB.Net or C#? –
它是VSTO-C#。 –
然後在下面看到我的回答 –