2014-10-08 3 views
0

조직 스프레드 시트 공식에 시간 상수를 사용하는 방법이 있습니까? 예를 들어, 나는 이런 식으로 뭔가하고 싶은 :emacs org-mode 공식의 시간 상수

@>[email protected]>$5-'08:00:00'*vcount(@[email protected]) 

나는 내가 :)이 @해야보다 직장에서 봤는데 얼마나 더 계산을> $ 5는 제가했습니다 시간의 총합이다 직장에서 왔으며 @ 2 .. @ - 1 내가

덕분에 많은 일에 행 일한지 있습니다

답변

0

그것은 당신을 도울 수 있습니다

|  16:00 | 1 |  8:00 | 
| 1d 16:00 | 3 | 16:00 | 
|  8:00 | 3 | -16:00 | 
|  -8:00 | 2 | -1d 0:00 | 
| -1d 16:00 | -6 |  8:00 | 
|  8:00 | 1 |  0:00 | 
#+TBLFM: $3='(calculate-hours $1 $2 8) 

(defun calculate-hours (sumhours numdays hours-per-day) 
    (if (string-match 
     "\\(-*?\\)\\([0-9]*?\\)\\(?:d \\)*\\([0-9]+\\):\\([0-9]+\\)" 
     sumhours) 
     (let* ((input-sign (match-string 1 sumhours)) 
     (total-days 
      (string-to-number (match-string 2 sumhours))) 
     (total-hours 
      (+ (* total-days 24) 
     (string-to-number (match-string 3 sumhours)) 
     (/ (string-to-number (match-string 4 sumhours)) 60.0))) 
     (forecast-hours 
      (- (if (string-equal input-sign "-") 
      (* -1 total-hours) 
      total-hours) 
     (* hours-per-day (string-to-number numdays)))) 
     (sign (if (>= (signum forecast-hours) 0) "" "-")) 
     (forecast-hours (abs forecast-hours))) 
    (if (>= forecast-hours 24) 
     (let ((forecast-days 
      (truncate (/ forecast-hours 24)))) 
      (concat 
      sign 
      (number-to-string forecast-days) 
      "d " 
      (number-to-string 
     (- (/ (truncate (* forecast-hours 100)) 100) (* forecast-days 24))) 
      ":00")) 
     (concat 
     sign 
     (number-to-string 
     (/ (truncate (* forecast-hours 100)) 100)) ":00"))) 0.0)) 
+0

와우 그게 전부 AA의 입 : 조직 테이블에는 아주 좋은 시간 수학 지원이 있지만, 그래서 나는 오히려 저것을 선호하십시오. 비록 노력을 가져 주셔서 감사합니다 :) – Arg

+0

나는 같은 문제에 대한 쉬운 해결책을 찾지 못해서 기한 내에 그것을 써야했습니다 :) – artscan