Å uttrykke Excel formel i Java (desimal til annen tolkning)

stemmer
1

Jeg omdanne et Excel-ark formel til java men jeg kan ikke forstå hvordan utmerker klarer å ta de følgende: 0.22 Bruker en formel: = TEKST (R5 / 14, h: mm) og en eller annen måte kommer frem til: 0.22

Igjen hvis jeg gir: 2.8 den ankommer 4,48 Kan noen vennligst forklare meg hvordan den gjør dette. Jeg har lest litt om desimal og jeg forstår konvertering, men dette har ennå ikke bidratt til å forklare ovenfor.

Publisert på 30/09/2008 klokken 00:08
kilden bruker
På andre språk...                            


5 svar

stemmer
0

Ja det er litt klønete. Ta / 14 ut, og det hjelper. I utgangspunktet 1 = 1 dag så R5 er uttrykt i 14ths av en dag. Du kan sannsynligvis gjøre

int msInADay= 86400000;
Time value = new Time(R5/14 * msInADay);

men det er uprøvd.

Svarte 30/09/2008 kl. 00:23
kilden bruker

stemmer
1

Excel butikker datetime-verdier som:

  • Tallet til venstre for desimaltegnet representerer antall dager siden 1 januar 1900
  • Tallet til høyre for desimaltegnet representerer den fraksjonelle del av en 24-timers dag

I ditt eksempel, er du konverterer et desimaltall til en tekstlig representasjon av time- og minutt deler av datetime verdi.

Arbeide gjennom første formelen, 0,22 delt på 14 (hvorfor gjør dere dette?) Er lik 0,015714286. Hvis du deretter bruker denne fraksjonen mot en 24-timers dag (multipliseres med 1440 minutter), tilsvarer det 22 minutter og noen endring (dvs. "00:22").

Arbeider gjennom den andre formel, 2,8 dividert med 14 er lik 0,2. Multiplisert med 1440, er den lik 288 minutter, noe som er 4 timer og 48 minutter (dvs. "04:48").

Svarte 30/09/2008 kl. 00:28
kilden bruker

stemmer
0

Takket Creedence.

Den fungerer med: double r = 0,22; dobbel drive = (r / 14) * 1440;

Svarte 30/09/2008 kl. 01:13
kilden bruker

stemmer
0

En veldig god dokumentasjon av regneark-internals kan bli funnet i Openformula specififcation (som dokumenterer / definerer Openoffice-Calc).

http://www.oasis-open.org/committees/documents.php?wg_abbrev=office-formula

Hvis du søker en Java-bibliotek for å evaluere Excel-formler, kan enten Apache-POI eller Pentaho sin LibFormula være nyttig:

POI: http://poi.apache.org/

LibFormula: http://sourceforge.net/project/showfiles.php?group_id=51669&package_id=213669

Svarte 30/09/2008 kl. 03:40
kilden bruker

stemmer
1

Eller Abacus Formel Compiler for Java, som lar deg kompilere formlene i Excel-ark helt ned til Java bytekode for rask og enkel kall fra Java-programmer (kan kompilere ved kjøring uten JDK).

http://www.formulacompiler.org/

Svarte 09/06/2009 kl. 04:30
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more