簡體   English   中英

是否可以從Excel 2002工作簿中的所有工作表返回所有范圍的列表?

[英]Is it possible to return a list of all ranges from all worksheets in an Excel 2002 workbook?

我想從Excel 2002(客戶要求,不能更改)工作簿和其中包含的工作表中提取“特殊”數據。 我已經在“特殊”數據類別中對范圍進行了分類。 我想獲取一個工作簿中所有工作表的所有范圍的列表。 我感興趣的屬性是范圍名稱和范圍地址。 我已經搜尋了一段時間,沒有發現任何相關內容。

我以為Excel 2002 API會公開如下內容:

ApplicationClass app = new ApplicationClass();
Workbook workbook = app.Workbooks.Open(@"c:\file.xls", ...);
Worksheet worksheet = workbook.Worksheets["sheet1"] as Worksheet;
Range[] ranges = worksheet.GetAllRanges();

或類似的東西。 但是,我很遺憾地誤會了。

Excel 2002有可能嗎?

如果要查找所有“命名”范圍,則應查看Workbook.Names集合。 Names集合中的每個Name都具有RefersTo屬性,該屬性提供Name引用的公式或范圍引用。 (但是請注意,名稱可以是公式,而不是范圍引用)
昏暗的oNM作為名稱

對於ActiveWorkbook.Names中的每個oNM
debug.print oNM.Refersto
下一個OMN

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM