Incrementa el string tcCodigo Ej. string lastCodigo = IncrementXLColumn("AA"); -> Devolvera lastCodigo = "AB";
/// <summary>
/// Incrementa el string tcCodigo
/// Ej. string lastCodigo = IncrementXLColumn("AA"); -> Devolvera lastCodigo = "AB";
/// </summary>
/// <param name="tcCodigo"></param>
/// <returns></returns>
protected static string IncrementXLColumn(string tcCodigo)
{
//var parts = System.Text.RegularExpressions.Regex.Matches(Address, @"([A-Z]+)|(\d+)");
var lParts = System.Text.RegularExpressions.Regex.Matches(tcCodigo, @"([A-Z])|([A-Z])");
if (lParts.Count != 2) return null;
if (lParts[1].Value == "Z") return incCol(lParts[0].Value) + "A";
else return lParts[0].Value + incCol(lParts[1].Value);
}
private static string incCol(string tcCol)
{
if (tcCol == "") return "A";
string fPart = tcCol.Substring(0, tcCol.Length - 1);
char lChar = tcCol[tcCol.Length - 1];
if (lChar == 'Z') return incCol(fPart) + "A";
return fPart + ++lChar;
}