使用OpenXml操作Excel,以下方法用于在添加列时修改Cell的CellReference属性。

摘要:
以下方法实现了在Excel中增加单元格的CellReference的功能,并且只支持两个字母。

以下方法实现了递增Excel中单元格的CellReference的功能,只支持两位字母。

 1 public static string CellReferenceIncrement(string cellReference)
 2 {
 3     Match m1 = Regex.Match(cellReference, "^([A-Z]+)");
 4     Match m2 = Regex.Match(cellReference, @"(d+)$");
 5 
 6     string value = m1.Value;
 7     List<char> newChars = new List<char>();
 8     for (int i = value.Length - 1; i >= 0; )
 9     {
10         if (value[i] == 'Z')
11         {
12             newChars.Insert(0, 'A');
13             if ((i - 1) >= 0)
14                 newChars.Insert(0, (char)((int)value[i - 1] + 1));
15             else
16                 newChars.Insert(0, 'A');
17             break;
18         }
19         else
20         {
21             newChars.Insert(0, (char)((int)value[i] + 1));
22             if ((i - 1) >= 0)
23                 newChars.Insert(0, value[i - 1]);
24             break;
25         }
26     }
27     return string.Join("", newChars) + m2.Value;
28 }

以下为测试代码:

1 static void Main(string[] args)
2 {
3     List<string> tList = new List<string>() { "A2", "Z3", "AA3", "AZ9", "WF20" };
4     foreach (string s in tList)
5         Console.WriteLine(CellReferenceIncrement(s));
6 }

以下为输出结果:

使用OpenXml操作Excel,以下方法用于在添加列时修改Cell的CellReference属性。第1张

免责声明:文章转载自《使用OpenXml操作Excel,以下方法用于在添加列时修改Cell的CellReference属性。》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇SqlServer中使用Select语句给变量赋值的时候需要注意的一个问题常用鼠标事件下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

java根据图片路径下载图片并保存到本地目录

importjava.io.File; importjava.io.FileOutputStream; importjava.io.InputStream; importjava.io.OutputStream; importjava.net.URL; importjava.net.URLConnection; publicclassDownloadIma...

C#获取web.config配置文件内容

使用ConfigurationManager读取web.config配置文件字段,主要用来读取数据库连接字符串。 ConfigurationManager提供对客户端应用程序配置文件的访问。 其有两个属性 1.ConnectionStrings 获取当前应用程序默认配置的 ConnectionStringsSection 数据。 方法一: string...

adb shell 查看系统属性(用来判断特殊的操作系统)

一般来讲,在android程序开发中进行需要判断设备类型和系统版本 1、设备类型判断(android.os.Build.MODEL) 比如判断属于Google Nexus 5,Nexus 7,MIUI v5, MIUI v6,三星设备,魅族设备等; 这类型的问题都使用的android.os.Build.MODEL来判断,android.os.Build.M...

(转)Asp.Net(C#) XML+Xslt转Excel的解决方案

1. 新建一个Excel文档,并填写表头与两行左右的内容,然后另存为XML表格 格式 并修改成Xslt模板;2. 将要导入的数据生成XML格式文档;3. 通过Xslt模板将数据生成,并设定Response.ContentType = "application/vnd.ms-excel"; 4. 刷新输出页保存文件即为Excel格式的文档 ExportCar...

PHP教程:PHPUnit学习笔记(四)断言详解

断言(Assertions)是PHPUnit提供的一系列对程序执行结果测试的方法。通俗的讲,就是断言执行程序结果为我们期待的值,如果不是则 测试失败,下面是断言方法的详细介绍,内容全部来翻译自PHPUnit的官方文档,部分方法官方介绍的很模糊,我根据官方的源码注释增加了说明和注释 assertArrayHasKey(mixed $key, array $a...

asp.net简单实现利用HttpModule实现防sql注入

关于sql注入,已经被很多人讨论过了。这篇没有新意功能也不够通用,nnd,不想引起口水,就是觉得简单而且思路有参考性才贴出来。1、新建一个类,实现IHttpModule接口 代码     public class SqlHttpModule : IHttpModule    {        public void Dispose()        { ...