public static CellRangeAddress valueOf(String ref) {int sep = ref.indexOf(":");CellReference a;CellReference b;if (sep == -1) {a = new CellReference(ref);b = a;} else {a = new CellReference(ref.substring(0, sep));b = new CellReference(ref.substring(sep + 1));}return new CellRangeAddress(a.getRow(), b.getRow(), a.getCol(), b.getCol());}

public static CellRangeAddress ValueOf(String reference){int sep = reference.IndexOf(":", StringComparison.Ordinal);CellReference a;CellReference b;if (sep == -1){a = new CellReference(reference);b = a;}else{a = new CellReference(reference.Substring(0, sep));b = new CellReference(reference.Substring(sep + 1));}return new CellRangeAddress(a.Row, b.Row, a.Col, b.Col);}
