Acessar CheckBox em planilha excel e retornar seu valor via C Sharp

14/03/2013

Tentei o seguinte código:


Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
Microsoft.Office.Interop.Excel.Workbook wb = excel.Workbooks.Open(CaminhoDoArquivo, 0, true, 5, "", "", false,Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "", true, false, 0, true, false, false);

Microsoft.Office.Interop.Excel.Range Range = null;
Microsoft.Office.Interop.Excel.Worksheet ash = null;


foreach (Microsoft.Office.Interop.Excel.Worksheet ws in wb.Worksheets)
{
if (ws.Name.ToString().Trim().Contains("nomedasheet"))
{
Range = ws.UsedRange;
ash = ws;
break;

}
}

ash = (Microsoft.Office.Interop.Excel.Worksheet)excel.Worksheets.get_Item("Folha padrão (SDCD)");
Microsoft.Office.Interop.Excel.Shape aShape;
aShape = ash.Shapes.Item("Check Box 1");
x = aShape.Name;
Object o = aShape.OLEFormat.Object;
aShape = ash.Shapes.Item("Check Box 1");
//////////////////////ATÉ AQUI O CÓDIGO FUNCIONA PERFEITO////////////////////////////////


/////////////////////DAQUI EM DIANTE NÃO CONSIGO ACESSAR O VALOR DA CHECKBOX/////////////////////////
Microsoft.Vbe.Interop.Forms.CheckBox newBox = (Microsoft.Vbe.Interop.Forms.CheckBox)(((Microsoft.Office.Interop.Excel.OLEObject)o).Object);

string x = newBox.Value.Tostring();


Alguns sites consultados:

http://forums.asp.net/t/1244356.aspx/1



Alguém conhece?