使用C#删除excel中突出显示的行和列 [英] Remove highlighted rows and columns in excel using C#

查看:236
本文介绍了使用C#删除excel中突出显示的行和列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好,



我有一张带有突出显示的行和列的Excel工作表。需要删除那些突出显示的颜色行和列并导入到数据表中c#



我尝试过:



我有一张带有突出显示的行和列的Excel工作表。需要删除那些突出显示的颜色行和列并导入到数据表c#

解决方案





我认为你想要的代码看起来像下面的代码,尝试通过创建一个带有一些使用过的单元格的Test.xlsx excel文件来测试控制台应用程序中的代码(比如将第一行弄脏并插入字母或数字)然后制作背面颜色为黑色。只是不要忘记在项目中引用Microsoft.Office.Interop.Excel。请记住,你需要一个更好的异常处理和SOLID实现,下面的代码只是你最后工作的一个小指示。



 static void Main(string [] args)
{
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
xlApp = new Excel.Application();
尝试
{
xlWorkBook = xlApp.Workbooks.Open(@C:\Test \ Test.xlsx);
xlWorkSheet =(Excel.Worksheet)xlWorkBook.Sheets [1];
var rows = xlWorkSheet.UsedRange;
foreach(行中的Excel.Range行)
{
double color = row.Interior.Color;
if(color == 0)// 0表示黑色
row.Delete();
}

xlWorkBook.Save();
xlWorkBook.Close();
}
catch(例外)
{
throw;
}
最后
{
xlApp.Quit();
Marshal.ReleaseComObject(xlApp);
}
}





干杯,

--AH。


Hello everyone,

I am having a excel sheet with highlighted rows and columns . Need to remove those highlighted color rows and columns and import into datatable in c#

What I have tried:

I am having a excel sheet with highlighted rows and columns . Need to remove those highlighted color rows and columns and import into datatable in c#

解决方案

Hi,

I think your desired code will look like to the below one, try to test the code in console application by creating a Test.xlsx excel file with some used cells (like make the first rows dirty with inserting letters or numbers into them) then make the back color black. Just do not forget to reference Microsoft.Office.Interop.Excel in your project. Keep in your mind you need a better exception handling and also SOLID implementation the below code is only a small indication of your final work.

static void Main(string[] args)
		{
			Excel.Application xlApp;
			Excel.Workbook xlWorkBook;
			Excel.Worksheet xlWorkSheet;
			xlApp = new Excel.Application();
			try
			{
				xlWorkBook = xlApp.Workbooks.Open(@"C:\Test\Test.xlsx");
				xlWorkSheet = (Excel.Worksheet)xlWorkBook.Sheets[1];
				var rows = xlWorkSheet.UsedRange;
				foreach (Excel.Range row in rows)
				{
					double color = row.Interior.Color;
					if (color == 0) // 0 indicates black color
						row.Delete();
				}

				xlWorkBook.Save();
				xlWorkBook.Close();
			}
			catch (Exception)
			{
				throw;
			}
			finally
			{
				xlApp.Quit();
				Marshal.ReleaseComObject(xlApp);
			}
		}



Cheers,
--AH.


这篇关于使用C#删除excel中突出显示的行和列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆