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

 public static string CellReferenceIncrement(string cellReference)
{
Match m1 = Regex.Match(cellReference, "^([A-Z]+)");
Match m2 = Regex.Match(cellReference, @"(\d+)$"); string value = m1.Value;
List<char> newChars = new List<char>();
for (int i = value.Length - ; i >= ; )
{
if (value[i] == 'Z')
{
newChars.Insert(, 'A');
if ((i - ) >= )
newChars.Insert(, (char)((int)value[i - ] + ));
else
newChars.Insert(, 'A');
break;
}
else
{
newChars.Insert(, (char)((int)value[i] + ));
if ((i - ) >= )
newChars.Insert(, value[i - ]);
break;
}
}
return string.Join("", newChars) + m2.Value;
}

以下为测试代码:

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

以下为输出结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAABgCAIAAADQG7YaAAABeUlEQVRoge2YS3LEMAgFdf9T6WjZpSYCHsjh46p5vdLIcmhLGFxZixBCnrH/Aq4OmLlj+bMcat0QTKC37Ja1pgn3sAacZNThlIp4jDkBj8ltA1V+C/q0CCHE56pJ9xWzuFZr9bceXa3+4GeykxrAmpdrSnisVX6CahhrftmHnqzlfkRYNxY6XY3B7ZkED86d/wKtI3W2wF2W70QIISFAN7T6dEfdUmO7Y/XGTOSjz2tt7XNv+Ati2VpuApWfoAyDd6sp3+XGRHKo/ATxGBhUmVnhb+cHtLoLxJFS28C6qzzrCSHkBNen5f3vtNYMSOCZgVb9O4O7TUdPVEOOaYHeN6nlhrTWFCY+eHprIz8nu7WCb9ykFgjfnVv4cMud1AQ6ZqwFJU6EEII4WptVvayeKEtXWj07tI55PLYuJZhlaQV76L+0wB99qZZ6+7u0gjn3UEu+hur7CJzytZbYqkiMW8scrXV/QMNakWUJTpbWMrJqC+TVBCdCSD0/CbBkrqKEZIAAAAAASUVORK5CYII=" alt="" />

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

  1. VBS操作Excel常见方法

    VBS操作Excel常见方法 作者: 字体:[增加 减小] 类型:转载 时间:2009-11-13我要评论 VBS控制Excel常见方法,需要的朋友可以参考下. dim oExcel,oWb,oShe ...

  2. 在 VS2008 下操作 Excel 的方法总结

      这些天做个软件,需要读取 Excel 并导入到数据库中,所以研究了一下在 VC 下操作 Excel 的方法,这里做个总结,以作备忘. 一.最常用的 OLE 自动化方式 这个方式应该说是功能最全的方 ...

  3. 使用DocumentFormat.OpenXml操作Excel文件.xlsx

    1.开始 DocumentFormat.OpenXml是ms官方给一个操作office三大件新版文件格式(.xlsx,.docx,.pptx)的组件:特色是它定义了OpenXml所包含的所有对象(たぶ ...

  4. 用VB操作Excel的方法

    VB是常用的应用软件开发工具之一,由于VB的报表功能有限,而且一但报表格式发生变化,就得相应修改程序,给应用软件的维护工作带来极大的不便.因此有很多程序员现在已经充分利用EXECL的强大报表功来实现报 ...

  5. C#操作excel(多种方法比较)

    1.用查询表的方式查询并show在数据集控件上. public static string strCon = " Provider = Microsoft.Jet.OLEDB.4.0 ; D ...

  6. Ruby操作Excel的方法与技巧大全

    测试工作中,批量的数据通常会放到excel表格中,测试输出的数据写回表格中,这样输入输出易于管理,同时清晰明了 使用ruby来操作excel文件首先需要在脚本里包含以下语句 require'win32 ...

  7. C# - openxml 操作excel - '“System.IO.Packaging.Package”在未被引用的程序集中定义'

    在 CodeProject中,有位网友写的一篇基于OpenXML SDK 2.0对excel(大数据量)进行操作,其中,运行的时候,有如下错误: 类型“System.IO.Packaging.Pack ...

  8. OpenXml操作Excel

    要使用OpenXml首先要下载最新的Open XML Format SDK 2.0.具体的导入openxml的dll,去网上搜,很多 1.我个人写的XmlHelp类 using System; usi ...

  9. NPOI操作EXCEL(二)——大量不同模板时设计方式

    上一篇文章介绍了一些NPOI的基础接口,我们现在就来看看具体怎么用NPOI来解析一个EXCEL. 博主现在有这么一堆excel需要解析数据入库: 当然这只是员工的简要模板,还有很多其他的模板.我们可以 ...

随机推荐

  1. A very hard Aoshu problem

    A very hard Aoshu proble Problem Description Aoshu is very popular among primary school students. It ...

  2. Android防微信首页左右滑动切换

    大家看到微信首页切换效果有没有觉得很炫,滑动切换,点击底部bar瞬间切换,滑动切换渐变效果,线上效果图: 之前也在博客上看到别人的实现,再次基础上,我做了些优化.首先说下实现原理,大神略过,o(╯□╰ ...

  3. SQL Server 通配符 Wildcard character

    SQL Server 通配符 Wildcard character %        任意长度的字符串,如:'%computer%' _        单个字符,如:'_ean' []        ...

  4. Linux系统上安装mysql数据库

    一:下载并且上传安装包到linux系统上 1:下载地址:http://dev.mysql.com/downloads/mysql/ 2:通过LeapFtp工具,将windows上的mysql安装包拷贝 ...

  5. hdu 4000 树状数组

    思路:找出所有 a<b<c||a<c<b的情况,在找出所有的a<b<c的情况.他们相减剩下就是a<c<b的情况了. #include<iostre ...

  6. hdu 2838 树状数组

    思路:从后面往前面插,用一个二维树状数组保存,c[i][0]表示比i小的元素和,c[i][1]表示比i小的元素个数. #include<iostream> #include<cstr ...

  7. 解决c#,wpf程序带环境安装包体积太大问题

    在.net开发客户端的时候,一定会遇到用户没有安装.net环境的问题,特别是现在win7,win8,win10多系统并用的时间段,很多开发者使用的是4.5的目标环境,用户却是使用win7的系统,这样势 ...

  8. css禁止双击dom节点被选中user-select:none

    css禁止dom节点被选中:  当某个dom节点在快速重复点击的时候出现这个节点被选中,有时候其实并不希望出现这种情况,比如我们使用一个span或者a标签做为按钮dom元素的时候,快速双击这个按钮,就 ...

  9. css3 多列布局记

    css3 多列布局 多列布局属性: columns:column-widht和column-count的缩写. column-width:定义每列列宽度. column-count:定义分列列数. c ...

  10. Commons JXPath - Object Graph Traversal

    JXPath 提供了使用 Xpath 语法操纵符合 Java 类命名规范的 JavaBeans 的工具.也支持 maps.DOM 和其他对象模型.对于深层次结构的 JavaBean,使用 JXPath ...