这是我的python脚本:
from xlrd import open_workbook
from xlrd import xldate_as_tuple
book = open_workbook('C:/Users/.......Constantquotes.xlsx')
sheet0 = book.sheet_by_index(0) #Initializes the first row
print sheet0.row(0) #Prints the first row
date_value = xldate_as_tuple(sheet0.cell(0,1).value,book.datemode)
print date_value #Prints the date cell
# Next step: make the a list for the stock price
# Next step: append the list to a csv
所以我把价格变成了excel,他们每秒都会自我更新。我想做的是让python脚本每十分钟读一次excel表(我将使用cronjob来激活python脚本),然后将最新的价格附加到包含该库存价格的csv文件中。问题是当我运行python脚本时,它给出了我上次保存excel文件的价格和日期,而不是CURRENT价格。我尝试设置选项 - >保存 - >保存 - >保存自动回复信息 - > 1分钟,但这对我没有帮助。因此,为了重新解释这个问题,我如何使它每次xlrd读入.xls文件(以便python脚本可以提取当前价格和日期)我获得当前价格和日期,而不是价格和日期我最后一次保存.xlxs文件?
理想情况下,我希望能够离开电脑几天,然后回到人口稠密的.csv
或许有一个更好的解决方案来填充.csv?
答案 0 :(得分:0)
我认为这是使用VBA更好处理的任务之一。 Python无法访问数据,因为它尚未保存 - 它在内存中,但是你告诉python从磁盘读取。在我看来,你有两个合理的选择之一。
答案 1 :(得分:0)
嗯,这应该是在Excel而不是Python中实现的。在您的VBA中,您可以使用以下内容:
在您的VBA代码开始时。
Application.DisplayAlerts = False
如果要保存工作簿。
ThisWorkbook.Save
使用步骤1的原因是为了确保在保存工作簿之前不要求手动确认,以防您离开计算机。我建议不要在每次价格更新时保存工作簿。也许您可以使用计时器定期保存它。