这是在上周工作但由于某种原因它今天停止工作,可能是因为新的一年?
"AttributeError: '<win32com.gen_py.Microsoft Excel 15.0 Object Library.Workbooks instance at 0x20920640>' object has no attribute 'open'"
我收到以下错误消息:
FLOAT(9,2)
有人可以帮忙吗?
谢谢!
答案 0 :(得分:1)
奇怪的是,我和@AndyDo遇到了同样的问题。我最初用于访问Excel应用程序的代码停止工作。
原创(非工作):
** 注意 - 显然我与我使用的示例中的情况不匹配。但是,我不确定为什么代码之前没有错误。
来源:How to open a password protected excel file using python?
public function redirectToProvider() {
return Socialite::with('google')->redirect();
}
public function handleProviderCallback(Request $request) {
$adwords_api_response = Socialite::with('google')->getAccessTokenResponse($request->code);
dd($adwords_api_response);
}
然后,我更新了案例,如下面的代码所示,以纠正属性错误。
修订(工作):
来源 - Python Excel Mini Cookbook
import win32com.client as w3c
xlapp = w3c.Dispatch('Excel.Application')
xlwb = xlapp.Workbooks.open(file.xlsx, False, True, None, file_password)
xlsheet = xlwb.WorkSheets('my_sheet_name')
我想知道公式栏被激活的另一个打开的工作簿是否会影响该问题。我将不得不做更多的调查。
答案 1 :(得分:0)
没有open
方法,它是Open
。 Python区分大小写:)
答案 2 :(得分:0)
当代码第一次运行得很好时,我来寻找这个错误,但是当我再次运行它时,抛出了异常“ AttributeError:Excel.Application.Workbooks”。
这不是技术解决方案,这只是一个愚蠢(非常常见)的过滤器。
我在后台打开了一个Excel文件,并且代码关闭了Excel应用程序(当然,我们应该只关闭工作簿)。关闭Excel后,打开的我的文件在后台弹出“保存”对话框。当我再次运行相同的代码时,Excel Application成为一个问题,因为它尚未从Python发布。
也许,也许,您也在做类似的事情。举手击掌!!你不是唯一的一个!
答案 3 :(得分:0)
from win32com.client import Dispatch import os list_of_files=os.listdir(path) xl = Dispatch('Excel.Application') xlWb = xl.Workbooks.Open(file)
它曾经工作过,但今天却在尝试运行此代码时失败。
import win32com.client as w3c
xl = Dispatch('Excel.Application')
更改为xl = w3c.Dispatch('Excel.Application')
答案 4 :(得分:-1)
我遇到了这个问题“AttributeError: Excel.Application.Workbooks” 并修复它,只需关闭在后台打开的任何 Excel 工作表,它应该被修复。