2014-03-25 20 views
0

從網站採取了一個例子,試圖創建一個循環,將標記基於其單元格內容的某些細胞,其將通過FINDTEXT的方法從Gembox組件環流式FINDTEXT方法從Gembox電子表格

我的目標是要確定與關鍵字

  • 去該行
  • 改變該行的顏色,以特定顏色的最後一列的部分匹配

    • 發現細胞
    • 不斷下降的文件重複前面的命令
    • 停止一旦文件已經結束

    找到查詢,然後做什麼我指示它做

    感的搜索工作,但後停止第一個搜索結果

    有沒有辦法使用這種方法來循環搜索,或者我可以使用if和另一種方法來測試單元格 以查看它是否具有我要搜索的部分片段?

    這是即時通訊立足我知識上

    http://www.gemboxsoftware.com/SampleExplorer/Spreadsheet/AdvancedFeatures/Searching?tab=cs

    再次感謝球員

    下面

    是我的工作如何系統工作在1個查詢基礎ID喜歡幹這個鏈接整個文檔

    using System; 
    using System.Drawing; 
    using System.Text; 
    using System.IO; 
    using GemBox.Spreadsheet; 
    using System.Data; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Threading.Tasks; 
    
    namespace autoexcel2 
    { 
    class Program 
    { 
        [STAThread] 
        static void Main(string[] args) 
        { 
         //IF USING PRO PUT YOUR SERIAL BELOW 
         SpreadsheetInfo.SetLicense("FREE-lIMITED-KEY"); 
    
         ExcelFile ef = ExcelFile.Load("sample.xlsx"); 
    
         string searchText = "pharma"; 
         var ws = ef.Worksheets[0]; 
    
         StringBuilder sb = new StringBuilder(); 
    
         int row; 
         int col; 
    
         ws.Cells.FindText(searchText, false, false, out row, out col);; 
    
    
    
         if (row == -1 || col == -1) 
          sb.AppendLine("cant find nada"); 
          Console.WriteLine(sb.ToString()); 
         else 
         { 
          ws.Cells[row,5].Style.FillPattern.SetSolid(Color.Aqua); 
    
         } 
    
    
         ef.Save("done.xlsx"); 
    
    
    
    
        } 
    } 
    } 
    
  • 回答

    1

    嗨,請嘗試以下操作:

     
        ExcelFile ef = ExcelFile.Load("sample.xlsx"); 
    
        string searchText = "pharma"; 
        var ws = ef.Worksheets[0]; 
    
        foreach (var currnetRow in ws.Rows) 
        { 
         int row; 
         int col; 
         currnetRow.Cells.FindText(searchText, false, false, out row, out col); 
    
         if (row != -1 || col != -1) 
          currnetRow.AllocatedCells.Last().Style.FillPattern.SetSolid(Color.Aqua); 
        } 
    
        ef.Save("done.xlsx"); 
    

    我希望這有助於。

    Regards,
    Mario