2013-12-23 58 views
1

我必須動態讀取Excel xlsx格式的大約2000個文件,才能使用csharp將數據導入數據庫。這不是表格數據,也不是頭柱,數據必須動態讀取,因爲單元的位置根據產品數據而變化,我們有標籤單元來查找數據。我最大的問題是我無法讀取組合框的值,因爲位置,單元格/組合的名稱和數量會根據產品而改變,但標籤將保持不變。我試圖導出到每一種格式類型,但它不起作用,組合特定的值後特定的單元格標籤消失。 任何可能的解決方案?如何讀取excel動態數據並獲取組合框值

  • Ex。我的電子表格:
    • 行A1:標籤|價值|空值|標籤|值|合併單元格標籤|價值
    • 行A2:標籤| producttypecombovalue
    • 排A3:標籤| producttypecombovalue
    • 行A4:標籤| producttypecombovalue ...
    • 行AX ..:標籤|值|標籤|值|合併單元格標籤|價值

note that plus signs is dynamic rows

+0

我建議在數據表中讀取電子表格,如果它是一個表格數據,然後篩選出什麼你需要從那裏。 – danish

+0

我不明白Excel的格式。你可以上傳圖片? – dovid

+0

我上傳了一張照片。和丹麥語:我在閱讀數據表時丟失了數據 – giuice

回答

0

如果組合框全部位於標籤右側的單元格上,那麼您可以通過查看它們的位置來過濾表單上的所有組合。他們的TopLeftCell屬性或Top和Left屬性),並使用最接近您要查找的位置的預期位置的那個。

在VBA(使用表單連擊,從你的截圖是你處理什麼用) -

Sub tester() 
    Dim o 
    For Each o In ActiveSheet.OLEObjects 
     Debug.Print o.Name, o.Top, o.Left, o.TopLeftCell.Address(), _ 
        TypeName(o.Object) 
    Next o 
End Sub 
+0

好主意Tim,我正在使用c#,你知道該怎麼做嗎?我需要一個真實世界的例子。如何訪問標籤,組合位置和值。 – giuice