https://github.com/cgrand/spreadmap.git
git clone 'https://github.com/cgrand/spreadmap.git'
(ql:quickload :cgrand.spreadmap)
Evil Clojure library to turn Excel spreadsheets in persistent reactive associative structures.
[net.cgrand/spreadmap "0.1.4"]
=> (require '[net.cgrand.spreadmap :as evil])
nil
=> (def m (evil/spreadmap "/Users/christophe/Documents/Test.xls"))
#'user/m
=> (select-keys m ["A1" "B1" "C1"])
{"C1" 6.0, "B1" 2.0, "A1" 3.0}
; m is a spreadhseet where C1 is A1*B1
=> (-> m (assoc "B1" 12) (get "C1"))
36.0
=> (-> m (assoc "A1" 8) (get "C1"))
16.0
=> (defn mul [a b]
(-> m
(assoc "A1" a)
(assoc "B1" b)
(get "C1")))
#'user/mul
=> (mul 8 9)
72.0
=> (mul 7 6)
42.0
Copyright © 2013 Christophe Grand
Distributed under the Eclipse Public License, the same as Clojure.