首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sayhier
V2EX  ›  程序员

excel 工具,如何最简单的变成 web 服务?

  •  
  •   sayhier · 167 天前 · 3390 次点击
    这是一个创建于 167 天前的主题,其中的信息可能已经有所发展或是发生改变。

    公司现有一个 excel 工具,就是输入些数然后计算结果,不想把 excel 文件发给个人怕背后的公式啥的泄密。所以想搞成网页版大家访问。

    公司 IT 跟微软战略合作,有 Azure 的资源可以用。

    我能想到的:用 Power BI,因为 excel 跟 Power BI 也差不多嘛。把 excel 找个漂亮的 HTML 模板,然后背后的算法逻辑用 JS 重写,然后放到虚机上去。

    开发、部署复杂,需要找供应商干的就算了。没预算。

    第 1 条附言  ·  166 天前
    不想把文件给销售本人,因为他们可以把工具带走了,哪怕不在公司了,所以要在线版的。

    API 方式也不可行,太复杂了,没人搞这个。

    需要有输入有输出,背后就是些公式和逻辑。
    第 2 条附言  ·  166 天前
    其实我的本意吧,就是想让非程序员,只会 office 工具的人去干这件事情
    37 回复  |  直到 2019-10-25 16:08:09 +08:00
    caqiko
        1
    caqiko   167 天前 via Android
    excel 和 pbi 差的很多。

    还是直接开发 web 应用比较适合吧
    kajweb
        2
    kajweb   167 天前
    py->read->output->data.xls->convert->data.html?
    ADMlN
        3
    ADMlN   167 天前 via Android
    全选,复制,粘贴值,怎么样?
    momocraft
        4
    momocraft   167 天前
    最小开发可能是接上 COM/OLE,然后开放成 API

    愿意重写逻辑那用什么都可以了
    hhhsuan
        5
    hhhsuan   167 天前 via Android
    所以你的网页版是只需要显示呢还是也要输入?
    koebehshian
        6
    koebehshian   167 天前   ♥ 1
    "怕背后的公式啥的泄密","背后的算法逻辑用 JS 重写",那看网页源码不就泄密了
    snw
        7
    snw   167 天前 via Android
    现在 Office 不是有 web add-in 了吗?
    不过 JS 很难保密,只能加强混淆
    exip
        8
    exip   167 天前 via Android
    用 php 或 python 或 go 写个功能一样的程序放服务器,对外提供接口
    dexterzzz
        9
    dexterzzz   167 天前
    有 offoce365 用 sharepoint online list,2019 版本的,加上 microsoft flow。
    userdhf
        10
    userdhf   167 天前
    用 js 真的好吗? 0.1+0.2 都算不对,还是不要冒险了吧...
    CallMeReznov
        11
    CallMeReznov   167 天前   ♥ 1
    直接导入 powerBI!
    后续小范围修改也简单,给领导看也牛逼,高大上,跟电影里似得!

    虽然我没钱用,但是看的好利好的样子!
    Pastsong
        12
    Pastsong   167 天前
    Buges
        13
    Buges   167 天前 via Android
    我记得 excel 好像有个操作,执行之后所有的值都变成常量,什么表达式都没了。
    smallgoogle
        14
    smallgoogle   167 天前
    大概只能后端语言写。js 就肯定暴露了。
    zhangchao12cn
        15
    zhangchao12cn   167 天前   ♥ 1
    Power BI 网页端导入了 excel 不是可以自动生成 web 页面的吗
    jinliming2
        16
    jinliming2   167 天前 via iPhone
    前后端数据绑定,数据输入在前端,输入实时发给后端计算并返回计算结果,可通过 websocket 达到实时通信?
    公式如果是保密的话,那就别想着前端计算了,只能把数据发给后端去计算,公式保存在服务器上。
    c090817
        17
    c090817   167 天前
    填入值然后根据需求 点击计算生成数据,后端算完然后直接生成表格或者导出 excel 比较简单
    ihacku
        18
    ihacku   167 天前 via iPhone
    可能不符合 lz 需求 可以看下这个
    https://github.com/ricklamers/gridstudio
    wenzhoou
        19
    wenzhoou   167 天前 via Android
    excel 有密码保护你不知道吗?
    nnnToTnnn
        20
    nnnToTnnn   167 天前
    @userdhf 说的好像 Java 能算对一样,对于精准的浮点计算本来就要用到数学库
    realpg
        21
    realpg   167 天前 via Android
    @wenzhoou 1 元解密保护(不是打开密码,保护密码) 欢迎支持
    LeeSeoung
        22
    LeeSeoung   167 天前
    excel 也有 online 版,可以控制权限
    sky101001
        23
    sky101001   166 天前
    要真正保密只能在后端操作吧。用 js 重写一样会暴露算法,防君子不防小人。
    不肯做 api,那不妨用 vba 封装 dll,每次用的时候给出动态密码,需要下载对应的临时 key 才给用。不过这种做法纯属脱裤子放屁
    windedge
        24
    windedge   166 天前
    如果网速可以接受的话, 可以试下 AirTable
    skenan
        25
    skenan   166 天前
    Airtable + 1
    Les1ie
        26
    Les1ie   166 天前
    web 上传一个 excel,然后我 pandas 计算出结果,返回一个 excel 文件给用户

    以前我这想写过一个工具,体验海星
    ptrees
        27
    ptrees   166 天前
    自己用 vue 做过一个类似的,读取一个本地的 excel 文件然后显示在网页上,不知道符不符合你的需求,读取数据的部分比较简单,只读取第一列,可能需要重写
    https://segmentfault.com/a/1190000019320653?_ea=12663757
    vexplain
        28
    vexplain   166 天前
    @nnnToTnnn #20 666
    sunxl
        29
    sunxl   165 天前
    @userdhf 这样说话真的好吗,0.1+0.2 都不会算,就不要出来秀智商了吧
    yl666
        30
    yl666   165 天前
    在线 spreadJS,我们买过 20w
    userdhf
        31
    userdhf   165 天前
    @sunxl 要不您给讲讲?呵呵。
    nnnToTnnn
        32
    nnnToTnnn   165 天前
    @vexplain 难道错了么? Java 要用到 BigDecimal 因为计算机是十六进制了,所以对于十进制的浮点计算本来就不准
    nnnToTnnn
        33
    nnnToTnnn   165 天前
    @vexplain 计算机原理里面不是有讲过为什么会出现计算不准确的问题。
    vexplain
        34
    vexplain   165 天前
    @nnnToTnnn #33 没错啊老哥, 不要误解. 我是赞许你, 不光 JS,
    Java, Python 等都有这个问题
    nnnToTnnn
        35
    nnnToTnnn   165 天前
    @vexplain 第一个就是怀疑我哪里错了,只要有人 @我总感觉哪里做错了 叹气。。。
    vexplain
        36
    vexplain   165 天前
    @nnnToTnnn #35 要自信, 哈哈哈
    FFSephiroth
        37
    FFSephiroth   94 天前
    非程序员,只会 office 工具的人去干这件事情还是算了吧。但是看你前面的说法你是懂 JS,懂一些基本的代码开发的。那么可以用在你的系统中嵌入一些第三方控件来完成。既然你懂 JS,那么推荐你一款前端的类 Excel 控件,SpreadJS
    https://www.grapecity.com.cn/developer/spreadjs
    用这个的好处是,只要你会 JS 就能用起来,并且功能很全 Excel 的常用功能他基本都支持,而且设置是可以跟 Excel 进行互通的。之后搭配一个带有权限的简单系统外壳就基本完成你想要的了。
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1619 人在线   最高记录 5168   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 33ms · UTC 01:46 · PVG 09:46 · LAX 17:46 · JFK 20:46
    ♥ Do have faith in what you're doing.