Tengo un complemento VSTO y estoy leyendo datos de una hoja de cálculo de Excel.¿Es posible obtener un int de Range.Value en VSTO?
Parece que casi todos los datos numéricos se leen como double
. ¿Es posible obtener un valor de int
desde Range.Value
?
Aquí hay algunos códigos para demostrar lo que quiero decir.
Worksheet w = (Worksheet)Globals.ThisAddIn.Application.ActiveWorkbook.Worksheets["Sheet1"];
var value = ((Range)w.Cells[1, 1]).Value;
bool isInt = value is int;
bool isDouble = value is double;
No importa el formato de hoja de cálculo que utilizo en la Hoja1, celda A1, isInt
siempre vuelve falsa.
¿Hay algún formato que debería usar para obtener int
? Pensé que quizás General
o 0
funcionarían, pero parece que no.
No creo que alguna vez se obtendría un int - Excel nunca almacena números como un int internamente, siempre un doble. – Govert
@Govert Bien, eso es lo que sospechaba pero quería confirmación. Si publica una respuesta (preferiblemente con una fuente sobre ese tidbit de Excel) lo aceptaré. –