2011-01-31 32 views
9

AVERAGE işlevini kullanmak istiyorum, ancak bir etiket olması gereken bir referans hücrem olduğunda, çıktı olarak #VALUE alırım.JXL çözmek #VALUE problemi

Yapmam çalışıyorum ne için kod örnek parçasını ekledim: AVG değeri değişecek beri 0'a boş hücreyi dönüştürmek olamaz

String filename = "C:\\input.xls";  
WorkbookSettings ws = new WorkbookSettings();  
ws.setLocale(new Locale("en", "EN"));  
WritableWorkbook workbook = Workbook.createWorkbook(new File(filename), ws);  
WritableSheet s1 = workbook.createSheet("Output", 0);  
s1.addCell(new Number(1,2,6));  
s1.addCell(new Number(3, 1, 6));  
s1.addCell(new Number(3, 2, 1));  
s1.addCell(new Number(3, 3, 6));  
s1.addCell(new Label(3, 4, ""));  
Formula formula = new 
Formula(3,5,"AVERAGE(Output!D1,Output!D2,Output!D3,Output!D4,Output!D5)");  
s1.addCell(formula); 
workbook.write(); 
workbook.close(); 

.

JXL-2.6.jar

değeri kullanılan bir formül

IF dayalı olacak yerine Etiket Gerçek zamanlı olarak

(Böyle bir sorununuz KULLANILAN JAR hücre-referansı = "", "", bazı Değerler)

Ancak; Hücreyi, F2 anahtarıyla düzenlemeye çalıştığımda, yürütme planını değiştirir ve doğru çıktıyı alırım.

bunun için kasada herhangi bir çözüm var mı ....

Beklenen çözüm:

boş hücreyi olan ancak #VALUE iade edilmemesi böylece hücre biçimini değiştirmek için.

Bu mesaj hafifçe

Tamam

JXL #VALUE problem with reference to other sheet

cevap

1

ile ilgilidir, görüyorum ilk sorun sen eklediğiniz numaralar sütununda "C" değil "D" olmasıdır. Belki de "D" 'de numaralarınız olabilir, bu yüzden sorun değil, dikkate alınması gereken bir şey.

Büyük sorunun, jxl'nin elektronik tablodaki çalışma biçimi olduğunu düşünüyorum. Bu, other questioner, adlandırılmış aralığın formüllerinin eklenmesinden önce oluşturulmadığını düşündü, bu nedenle yalnızca hücreye "girdiklerinde" çalışmaya başladıklarını, yaptığın gibi. Dolayısıyla, "Çıktı" sayfanızın başlatılamaması olabilir, böylece Çıktı için geçerli bir referans yoktur! Referanslar.

ayrıca aynı sayfada Formula ekliyorsanız yana

ardından sayfa referansları dökümü ve bu gibi satır yazmak:

Formula formula = new Formula(3,5,"AVERAGE(D1:D5)"); 
İlgili konular