2009-02-07 7 views
4

과 같은 텍스트를 찾아서 제거하십시오. 예를 들어 "Joe"와 같은 텍스트를 찾고 C#을 사용하여 Excel 워크 시트에서 제거하고 싶습니까?Excel 워크 시트에서 C#

답변

7

Range.Replace 메서드를 사용하고 빈 문자열로 바꾸기 만하면됩니다.

static void ReplaceTextInExcelFile(string filename, string replace, string replacement) 
{ 
    object m = Type.Missing; 

    // open excel. 
    Application app = new ApplicationClass(); 

    // open the workbook. 
    Workbook wb = app.Workbooks.Open(
     filename, 
     m, false, m, m, m, m, m, m, m, m, m, m, m, m); 

    // get the active worksheet. (Replace this if you need to.) 
    Worksheet ws = (Worksheet)wb.ActiveSheet; 

    // get the used range. 
    Range r = (Range)ws.UsedRange; 

    // call the replace method to replace instances. 
    bool success = (bool)r.Replace(
     replace, 
     replacement, 
     XlLookAt.xlWhole, 
     XlSearchOrder.xlByRows, 
     true, m, m, m); 

    // save and close. 
    wb.Save(); 
    app.Quit(); 
    app = null; 
} 
+0

고맙습니다. –

0

Excel 2016 작동 : 참고로이 당신의 C# 프로젝트에 복사하고, 포함 :, 당신의 C에 Microsoft.Office.Interop.Excel에 대한

  • 검색합니다.
  • 어셈블리 버전은 15.0.0.0이어야합니다.

코드 : UR 도움을

Excel.DisplayAlerts = false; // Prevent "Nothing found" dialogs. 

var Excel = (Microsoft.Office.Interop.Excel.Application)ExcelDnaUtil.Application; 

foreach(Worksheet sheet in Excel.Sheets) 
{ 
    bool success = sheet.Rows.Replace(What: "ABC",Replacement: "DEF"); 
} 

Excel.DisplayAlerts = true; 
관련 문제