2011-04-11 33 views
1

如果我的用戶只用一個工作表上傳Excel文件,我想智能地只使用該工作表。然而,當我拉架構這個文件我看到一個意想不到的工作表(圓圈內):如何從Excel文件中選擇默認工作表

Unexpected worksheet in an excel schema

架構通過檢索:

OleDBConnection.GetSchema("Tables") 

在這種情況下,它看起來像第二工作表是由用戶定義的用於「滾動」滾動兩列的過濾器。

問題:是否安全地忽略帶有「$ < filter>」的工作表?換一種說法,如果我運行所有工作表,拋出「$ < filter>」類型,並且發現只剩下一個,使用該工作表是否合理默認?有沒有人有參考?

謝謝!

回答

0

是的,我會這樣想的。 $通常意味着它引用該工作簿中的命名範圍或宏。您可以使用正則表達式並捕獲「'中的任何內容。

這裏是如何從一個命名的範圍選擇數據的引用:

http://msdn.microsoft.com/en-us/library/ms971514.aspx

您是如何拉該文件的架構?也許你可以過濾它,以便它只有工作表?

+0

我編輯了這個答案與MSDN參考,所以我可以給你信貸。查看我關於如何檢索模式的修訂問題。 – Brett 2011-06-15 13:23:39