От этот поток , существуют различные способы сделать это:
double r = 5.1234;
System.out.println(r); // r is 5.1234
int decimalPlaces = 2;
BigDecimal bd = new BigDecimal(r);
// setScale is immutable
bd = bd.setScale(decimalPlaces, BigDecimal.ROUND_HALF_UP);
r = bd.doubleValue();
System.out.println(r); // r is 5.12
f = (float) (Math.round(n*100.0f)/100.0f);
DecimalFormat df2 = new DecimalFormat( "#,###,###,##0.00" );
double dd = 100.2397;
double dd2dec = new Double(df2.format(dd)).doubleValue();
// The value of dd2dec will be 100.24
DecimalFormat () , кажется, самый динамический способ сделать это, и также очень легко понять, когда чтение других кодирует.
Что делать, если вы попробуете System.Reflection.Missing.Value вместо Type.Missing?
С уважением,
M.
Какой класс вы используете?
Microsoft.Office.Interop.Excel.ApplicationClass
если это, попробуйте изменить его на
Microsoft.Office.Interop.Excel.Application