2011-04-21 15 views
5

मैं कठिनाइयों का सामना कर रहा हूँ POIपोई फॉर्मूला मूल्यांकन

मैं सूत्र सेल बनाया है इस प्रकार के साथ सूत्र कक्ष मान पढ़ते समय:

cell.setCellType(HSSFCell.CELL_TYPE_FORMULA); 
cell.setCellFormula("SUM(D8..F8)"); 

और मैं इस प्रकार यह पढ़ रहा हूँ:

double formulaCellValue = row.getCell((short) 7).getNumericCellValue(); 

इस तरह से पढ़ते समय (getNumericCellValue() का उपयोग करके), मुझे हमेशा 0.0 का मान मिल रहा है।

इस संबंध में किसी भी त्वरित सहायता की अत्यधिक सराहना की जाएगी।

+0

सेटसेलफोरला सेट करने के बाद आप क्या करते हैं? क्या आप डी 8..एफ 8 में किसी भी मान को सेट करते हैं? –

उत्तर

8

आपके सभी सूत्रों को सेट करने के बाद, आपको एक पुनर्मूल्यांकन ट्रिगर करने की आवश्यकता है। पृष्ठभूमि के लिए why evaluate docs देखें कि आपको इसे क्यों करने की आवश्यकता है, और Evaluation docs विवरण के लिए। त्वरित उत्तर यह है कि आप शायद कुछ ऐसा करना चाहते हैं:

HSSFFormulaEvaluator.evaluateAllFormulaCells(workbook); 

तब तक इसे कॉल न करें जब तक कि आप अपने सभी सेल को जोड़ने/संपादित नहीं कर लेते! यदि आप पूर्ण नियंत्रण की आवश्यकता है तो आप विभिन्न विकल्पों के ब्योरे के लिए docs देखें, केवल एक सेल के मूल्यांकन को भी ट्रिगर कर सकते हैं।

संबंधित मुद्दे