通过使用C#搜索特定单词来删除整个Excel行

时间:2016-09-19 09:56:30

标签: c# excel rows erase

我是C#的新手,并一直在尝试制作我自己的小工具来帮助我工作。 在大多数情况下,我已经完成了我需要完成的所有工作,但我还需要做一件事让整个程序按照我的意愿运行。

我需要查看我的excel文件,搜索特定的单词,(或其他条件),并在找到该特定单词时,找到它被删除的整行。

到目前为止,我没有太多运气找到合适的代码来帮助我在这方面取得成功。

任何帮助或建议都会有很大的帮助,非常感谢。

提前谢谢。

以下是我的代码的一部分:

此部分用于激活我的宏:

Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
            excel.Visible = true;
            //3
            Workbook wb1 = excel.Workbooks.Open(@"C:\Users\amohan\AppData\Local\Temp\amohan.xls");
            Workbook wb2 = excel.Workbooks.Open(@"C:\Users\amohan\Desktop\Saw pt. Test\Saw.xlsm");
            //4
            Microsoft.Office.Interop.Excel.Range source = wb1.Sheets["amohan"].Range("A1:X10000");
            Microsoft.Office.Interop.Excel.Range destination = wb2.Sheets["bom"].Range("A1:X10000");
            //5
            source.Copy(destination);
            wb2.Activate();
            excel.Run("Macro2");
            //6
            wb1.Close();
            wb2.SaveAs(@"C:\Users\amohan\Desktop\Saw pt. Test\I.O. (date&time)\Formatare - "
            + DateTime.Now.ToString("dd.MM.yyyy - ") + DateTime.Now.ToString("hh.mm.ss") + ".xlsm");
            excel.DisplayAlerts = false;
            wb2.SaveAs(@"C:\Users\amohan\Desktop\Saw pt. Test\Replaceable Excel File.xlsm");
            wb2.Close();
            excel.Quit();
            GC.Collect();

,此部分用于复制它以进一步粘贴信息(最后一步)

Microsoft.Office.Interop.Excel.Application sourceApp;
            Microsoft.Office.Interop.Excel.Workbook sourceWorkBook;
            Microsoft.Office.Interop.Excel.Worksheet sourceWorkSheet;
            Microsoft.Office.Interop.Excel.Range sourceRange;
            string sourcePath;

sourcePath = (@"C:\Users\amohan\Desktop\Saw pt. Test\Replaceable Excel File.xlsm");
            sourceApp = new Microsoft.Office.Interop.Excel.Application();
            sourceWorkBook = sourceApp.Workbooks.Open(sourcePath);
            sourceWorkSheet = sourceWorkBook.Worksheets.get_Item(3);
            sourceRange = sourceWorkSheet.UsedRange;
            sourceRange.Copy(Type.Missing);
            excel.Quit();
            GC.Collect();

我只需要在将其复制到剪贴板之前删除一些信息。

0 个答案:

没有答案