Python循环保存Excel计算结果仅显示最后一项的问题
问题分析与解决办法
你的代码里字典d其实已经正确保存了1到10的所有循环结果,问题出在最后一行的打印语句:print(d[x])。循环结束后,变量x的值停留在最后一次循环的数值10,所以这行代码只会输出d[10],也就是最后一次循环的结果,而非整个字典的内容。
解决步骤
1. 打印整个字典
直接打印字典d即可查看所有1到10的结果:
print(d)
2. 逐个打印键值对
如果需要更清晰的展示格式,可以遍历字典的键值对:
for num, result in d.items(): print(f"当C3={num}时,C20的结果是{result}")
3. (可选)确保Excel计算完成
如果遇到Excel计算延迟导致取值不准确的情况,可在每次修改C3后强制触发计算:
for x in range(1,11): ws1.range('C3').value = x ws1.calculate() # 强制刷新当前工作表的计算 d[x] = ws1.range('C20').value
内容的提问来源于stack exchange,提问作者Zohaib
相关产品推荐
相关产品推荐

