我有一个启用宏的Excel电子表格。当我单击一个按钮时,它会执行一个宏,该宏使用cURL在Web服务器上调用PHP脚本,这会对Oracle数据库进行一些查询。 PHP脚本将数据格式化为JSON字符串,然后Excel宏将在cURL响应中获取该字符串。然后它使用该数据更新工作表。
我没有在Excel中使用ODBC的原因是我不能保证用户将在他们的PC上安装Oracle ODBC。但是,Web服务器显然可以。
这是问题所在。在Excel工作表上更新之前,必须根据其他列的某些值修改数据库中的某些数据。我可以使用CASE语句在SQL语句本身中完成大部分操作。但是,我也可以从数据库中获取直接数据,并在PHP中进行修改。此外,我甚至可以将PHP中的直接数据返回到Excel,并在Excel VBA中进行修改。
我只需要对当前版本的数据进行大部分按摩。客户告诉我,未来版本的数据将更加纯净,不需要这些hackish修改。不幸的是,应用程序必须继续为当前版本的数据工作,因此hackish代码将始终存在。