如何找到與值相符的行和列(儲存格)我產生了一些表格,並且格式有時會有所不同,這會破壞我的腳本。這些表很大,因此我處理循環的方式是導入前 100 行和 5 列,以提高速度。然後我在特定列中搜尋關鍵字,以幫助我了解真實數據從哪一行開始。我關閉文件,然後使用標識列標題和資料開始的變數重新開啟。
然而,如上所述,大約 1% 的檔案被隱藏起來,並且在開頭有額外的列,有時還有幾百個隨機行,因此它使我的腳本出錯。我在想,如果我可以在整個縮寫表中搜尋我的關鍵字,那麼我就可以繞過它,但我不確定如何一次搜尋多個列,特別是當列名稱更改時。
這是我目前用來識別行的方法,在特定列中尋找。我如何打開它來搜尋第 1-10 列甚至整個表格?
//nr1 becomes the column headers and nr2 becomes the first row of data when i reopen the full table.<BR />nr1 = dt << get rows where( :Col1 == "customparameter" );
nr2 = nr1 + 1;
資料存取大規模客製化回覆:如何尋找與值相符的行和列(儲存格)@tx尼爾森,感謝您的回覆。列名並不表示內容,它們確實是扭曲的表格。這就是為什麼我必須找到實際資料開始的位置,關閉表,然後重新匯入帶有標識列的正確行的完整表。
不過,您的評論讓我意識到我可以獲取所有列名稱,然後對每一列進行循環,如果找到匹配的單元格值,則將行值分配給我的變數並退出循環。
回覆:如何尋找與值相符的行和列(儲存格)您可以按數字引用資料表中的列
dt << select where( column(dt, 3 ) == "Top" );
或者您可以輕鬆檢索資料表中的列名稱,並引用這些名稱
colNames = dt << get column names;
dt << select where( column( dt, colNames[3] == "Top" );
因此,提取樣本後,您可以找到列的名稱或僅按列號搜尋。