C# - Snippets
Message_DoesNotExist
public static void Message_NamedRangeDoesNotExist(string sNamedRangeName)
{
string sMessage =
"This workbook named range does not exist:" +
Environment.NewLine + Environment.NewLine +
"'" + sNamedRangeName + "'";
System.Windows.Forms.MessageBox.Show(
sMessage,
modConstants.g_sCOMPANYNAME + " (" + g_sVERSION + ") - Named Range",
System.Windows.Forms.MessageBoxButtons.OK,
System.Windows.Forms.MessageBoxIcon.Information
);
Tracer_Add("MESSAGE", sMessage);
}
Wbk_NamedRangeConstantAdd
public static void Wbk_NamedRangeConstantAdd(
string sNamedRange,
string sConstantValue,
bool bVisible = false,
bool bCheckExists = true)
{
try
{
if (clsError.ErrorFlag() == true)
return;
if (bCheckExists == true)
{
if (clsWbk.NamedRangeExists(sNamedRange) == true)
{
clsWbk.NamedRangeConstantSet(sNamedRange, sConstantValue);
return;
}
}
gApplicationExcel.ActiveWorkbook.Names.Add(
Name: sNamedRange,
RefersToR1C1: "=" + sConstantValue,
Visible: bVisible
);
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
mobjCOMException = objCOMException;
}
catch (Exception objException)
{
mobjException = objException;
}
finally
{
if (gbDEBUG_EXCEL == true ||
(mobjCOMException != null || mobjException != null))
{
string serrortext;
if (bVisible == true)
serrortext = "'Visible'";
else
serrortext = "'Hidden'";
clsError.Handle(
"NamedRangeConstantAdd",
"clsWbk",
"add the " + serrortext + " named range '" + sNamedRange +
"' with the constant value '" + sConstantValue + "'.",
mobjCOMException,
mobjException
);
}
}
}
Wbk_NamedRangeConstantSet
public static void Wbk_NamedRangeConstantSet(
string sNamedRange,
string sConstantValue,
string sWshName = "")
{
Excel.Workbook objWorkbook;
try
{
if (clsError.ErrorFlag() == true)
return;
int inamescounter;
objWorkbook = gApplicationExcel.ActiveWorkbook;
for (inamescounter = 1; inamescounter <= objWorkbook.Names.Count; inamescounter++)
{
if (objWorkbook.Names.Item(inamescounter).Name == sNamedRange)
{
objWorkbook.Names.Item(inamescounter).RefersToR1C1 = "=" + sConstantValue;
break;
}
}
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
mobjCOMException = objCOMException;
}
catch (Exception objException)
{
mobjException = objException;
}
finally
{
if (gbDEBUG_EXCEL == true ||
(mobjCOMException != null || mobjException != null))
{
clsError.Handle(
"NamedRangeConstantSet",
"clsWbk",
"change the contents of the named range '" + sNamedRange + "'.",
mobjCOMException,
mobjException
);
}
}
}
Wbk_NamedRangeDeleteLoopPrefix
public static bool Wbk_NamedRangeDelete(
string sNamedRange,
string sWshName,
string sWbkName = "")
{
try
{
if (clsError.ErrorFlag() == true)
return false;
Excel.Workbook objWorkbook;
Excel.Names objNames;
Excel.Name objName;
int inamescount;
bool bfound = false;
// need to add the same for workbooks
objWorkbook = gApplicationExcel.ActiveWorkbook;
objNames = objWorkbook.Names;
for (inamescount = 1; inamescount <= objNames.Count; inamescount++)
{
objName = objNames.Item(inamescount);
if (objName.Name == sWshName + "!" + sNamedRange)
{
objName.Delete();
bfound = true;
break;
}
}
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
mobjCOMException = objCOMException;
}
catch (Exception objException)
{
mobjException = objException;
}
finally
{
if (gbDEBUG_EXCEL == true ||
(mobjCOMException != null || mobjException != null))
{
clsError.Handle(
"NamedRangeDelete",
msCLASSNAME,
"delete the 'worksheet' named range '" + sNamedRange + "'.",
mobjCOMException,
mobjException
);
}
}
return false;
}
Wbk_NamedRangeExists
public static bool Wbk_NamedRangeExists(
string sNamedRange,
string sWshName = "",
string sWbkName = "")
{
Excel.Workbook objWorkbook = null;
Excel.Names objNames = null;
Excel.Name objName = null;
try
{
if (clsError.ErrorFlag() == true)
return false;
int inamescount;
bool bfound = false;
objWorkbook = gApplicationExcel.ActiveWorkbook;
objNames = objWorkbook.Names;
for (inamescount = 1; inamescount <= objNames.Count; inamescount++)
{
objName = objNames.Item(inamescount);
if (objName.Name == sNamedRange)
{
bfound = true;
break;
}
}
return bfound;
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
gobjCOMException = objCOMException;
}
catch (Exception objException)
{
gobjException = objException;
}
finally
{
objWorkbook = null;
objNames = null;
objName = null;
if (gbDEBUG_EXCEL == true ||
(gobjCOMException != null || gobjException != null))
{
clsError.Handle(
"NamedRangeExists",
"clsWbk",
"determine if the 'workbook' named range '" + sNamedRange + "' exists.",
gobjCOMException,
gobjException
);
}
}
return false;
}
Wbk_NamedRangeGet
public static string Wbk_NamedRangeGet(
string sNamedRange,
bool bRemoveEquals = true)
{
Excel.Workbook objWorkbook;
try
{
if (clsError.ErrorFlag() == true)
return "";
int inamescounter;
objWorkbook = gApplicationExcel.ActiveWorkbook;
string NamedRangeGet = "";
for (inamescounter = 1; inamescounter <= objWorkbook.Names.Count; inamescounter++)
{
if (objWorkbook.Names.Item(inamescounter).Name == sNamedRange)
{
NamedRangeGet = objWorkbook.Names.Item(inamescounter).Value;
break;
}
}
if (bRemoveEquals == true && NamedRangeGet.Length > 0)
{
// VB: Substring(1, length-1) ? C#: Substring(1)
NamedRangeGet = NamedRangeGet.Substring(1);
}
return NamedRangeGet;
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
mobjCOMException = objCOMException;
}
catch (Exception objException)
{
mobjException = objException;
}
finally
{
if (gbDEBUG_EXCEL == true ||
(mobjCOMException != null || mobjException != null))
{
clsError.Handle(
"NamedRangeGet",
"clsWbk",
"return the contents of the named range '" + sNamedRange + "'.",
mobjCOMException,
mobjException
);
}
}
return "";
}
Wsh_NamedRangeConstantAdd
public static void Wsh_NamedRangeConstantAdd(
string sWshName,
string sNamedRange,
string sConstantValue,
bool bVisible = false,
bool bHidden = false)
{
try
{
if (clsError.ErrorFlag() == true)
return;
Excel.Worksheet objWorksheet;
objWorksheet = (Excel.Worksheet)gApplicationExcel.Worksheets[sWshName];
objWorksheet.Names.Add(
Name: sNamedRange,
RefersToR1C1: "=" + sConstantValue,
Visible: bVisible
);
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
mobjCOMException = objCOMException;
}
catch (Exception objException)
{
mobjException = objException;
}
finally
{
if (gbDEBUG_EXCEL == true ||
(mobjCOMException != null || mobjException != null))
{
string serrortext;
if (bHidden == true)
serrortext = "'Hidden'";
else
serrortext = "";
clsError.Handle(
"NamedRangeConstantAdd",
msCLASSNAME,
"add the " + serrortext + " named range '" + sNamedRange +
"' with the constant value '" + sConstantValue + "'.",
mobjCOMException,
mobjException
);
}
}
}
Wsh_NamedRangeConstantSet
public static void Wsh_NamedRangeConstantSet(
string sWshName,
string sNamedRange,
string sConstantValue)
{
Excel.Worksheet objWorksheet;
try
{
if (clsError.ErrorFlag() == true)
return;
int inamescounter;
objWorksheet = (Excel.Worksheet)gApplicationExcel.Worksheets[sWshName];
for (inamescounter = 1; inamescounter <= objWorksheet.Names.Count; inamescounter++)
{
if (objWorksheet.Names.Item(inamescounter).Name == sNamedRange)
{
objWorksheet.Names.Item(inamescounter).RefersToR1C1 = "=" + sConstantValue;
break;
}
}
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
mobjCOMException = objCOMException;
}
catch (Exception objException)
{
mobjException = objException;
}
finally
{
if (gbDEBUG_EXCEL == true ||
(mobjCOMException != null || mobjException != null))
{
clsError.Handle(
"NamedRangeConstantSet",
msCLASSNAME,
"change the contents of the named range '" + sNamedRange + "'.",
mobjCOMException,
mobjException
);
}
}
}
Wsh_NamedRangeDelete
public static bool Wsh_NamedRangeDelete(
string sNamedRange,
string sWshName,
string sWbkName = "")
{
try
{
if (clsError.ErrorFlag() == true)
return false;
Excel.Worksheet objWorksheet;
Excel.Names objNames;
Excel.Name objName;
int inamescount;
bool bfound = false;
// need to add the same for workbooks
objWorksheet = (Excel.Worksheet)gApplicationExcel.Worksheets[sWshName];
objNames = objWorksheet.Names;
for (inamescount = 1; inamescount <= objNames.Count; inamescount++)
{
objName = objNames.Item(inamescount);
if (objName.Name == sWshName + "!" + sNamedRange)
{
objName.Delete();
bfound = true;
break;
}
}
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
mobjCOMException = objCOMException;
}
catch (Exception objException)
{
mobjException = objException;
}
finally
{
if (gbDEBUG_EXCEL == true ||
(mobjCOMException != null || mobjException != null))
{
clsError.Handle(
"NamedRangeDelete",
msCLASSNAME,
"delete the 'worksheet' named range '" + sNamedRange + "'.",
mobjCOMException,
mobjException
);
}
}
return false;
}
Wsh_NamedRangeGet
public static string Wsh_NamedRangeGet(
string sWshName,
string sNamedRange,
bool bRemoveEquals = true)
{
Excel.Worksheet objWorksheet;
try
{
if (clsError.ErrorFlag() == true)
return "";
int inamescounter;
objWorksheet = (Excel.Worksheet)gApplicationExcel.Worksheets[sWshName];
string NamedRangeGet = "";
for (inamescounter = 1; inamescounter <= objWorksheet.Names.Count; inamescounter++)
{
if (objWorksheet.Names.Item(inamescounter).Name == sNamedRange)
{
NamedRangeGet = objWorksheet.Names.Item(inamescounter).Value;
break;
}
}
if (bRemoveEquals == true && NamedRangeGet.Length > 0)
{
// VB: Substring(1, length-1) ? C#: Substring(1)
NamedRangeGet = NamedRangeGet.Substring(1);
}
return NamedRangeGet;
}
catch (System.Runtime.InteropServices.COMException objCOMException)
{
mobjCOMException = objCOMException;
}
catch (Exception objException)
{
mobjException = objException;
}
finally
{
if (gbDEBUG_EXCEL == true ||
(mobjCOMException != null || mobjException != null))
{
clsError.Handle(
"NamedRangeGet",
msCLASSNAME,
"return the contents of the named range '" + sNamedRange + "'.",
mobjCOMException,
mobjException
);
}
}
return "";
}
© 2026 Better Solutions Limited. All Rights Reserved. © 2026 Better Solutions Limited Top