[英]No opeing Excel File - VBA & Python
我在 OneDrive 上有一些文件。 我的 Python 程序正好查找 5 个文件并粘贴到本地文件夹 (C:/..)。 在此之后,一个大宏执行1 output 中的所有数据的合并。
在我的 Python 程序上,我有这个错误:
(-2147023170, 'Falha na chamada de procedimento remoto.', None, None)
这是原始代码:
def job(path,sheet,init, destinationi, hoje, ontem):
files = os.listdir(path)
paths = [os.path.join(path, basename) for basename in files if '.xlsx' in basename]
for i in paths:
destination = ''
i_div = i.split('/')
i_name = i_div[len(i_div)-1]
for j in namefile:
if j in i and not i_name.startswith('~$'):
destination = destinationi + j + hoje + '.xlsx'
i_name = j + hoje
if destination != '':
try:
app = xw.App(add_book=False)
app.display_alerts = False
wb = app.books.api.Open(i, UpdateLinks=False)
book = xw.Book(impl=xw._xlwindows.Book(xl=wb))
print("Abriu às "+str(datetime.now())+" - "+i_name)
try:
book.save(destination)
print("Salvou cópia às "+str(datetime.now())+" - "+i_name)
except Exception as e: print(e)
book.close()
app.kill()
print("Fechou às "+str(datetime.now())+" - "+i_name)
except Exception as e:
print(e)
我还有一个大宏,我一天执行几次。 但是,今天我在这段代码中有一个奇怪的错误,它打开了 Python 应该放在文件夹中的文件(我在手动放置后执行):
For Each oArq In oPat.Files
Workbooks.Open oArq
nova = ActiveWorkbook.Name
li = WorksheetFunction.CountA(Columns("F"))
Range("A2:BT" & li).Copy
Windows(nomeplan).Activate
Sheets(sub1).Activate
li2 = WorksheetFunction.CountA(Columns("F"))
If li2 = 1 Then
Range("A1").Select
ActiveCell.Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Application.DisplayAlerts = False
Workbooks(nova).Close
GoTo aqui
End If
Range("A1").End(xlDown).Select
ActiveCell.Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Application.DisplayAlerts = False
Workbooks(nova).Close
aqui:
Next oArq
在简历中:宏打开其他文档 Excel,复制粘贴,然后关闭文件。 有时,它转到“DeuRuim”,但 Err.Number 返回 0。此后,原来的 Excel 关闭,我不知道为什么。
有人有同样的问题吗? 我没有错误代码或任何帮助搜索解决方案的东西。
清理 Microsoft Office 的缓存解决了问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.