ini pertanyaan StackOverflow pertama saya, tetapi saya akan mencoba mengingat standar komunitas..
Saya menjalankan Office 2013 di Win7 Pro dan PoSh v4.0. Setelah menjalankan skrip berikutnya, saya menerima kesalahan berikut: "Pemanggilan metode gagal karena [System.__ComObject] tidak berisi metode bernama 'Tutup'."
$xl = New-Object -comobject Excel.Application
$xl.Visible = $false
$xl.DisplayAlerts = $false
$filepath = "C:\Users\rysullivan\Desktop\Projects\EDCautomation\attach\"
$wb1 = $xl.Workbooks.Open((Join-Path $filepath "Ryan Sullivan-Template.xlsx"))
sleep 5
$wb1.Close()
[System.Runtime.Interopservices.Marshal]::ReleaseComObject($xl)
Sesuai dengan standar penyajian kode terpendek yang akan mereproduksi kesalahan, saya mengembangkan kode di atas dari otomatisasi yang lebih besar
Powershell 4.0 dan Excel 2013 | Serangga | Work-a-round tampaknya mencapai titik yang sama. Saya mengikuti solusi thread/kultur yang ditawarkan oleh XXInvidiaXX dan kesalahan yang sama terjadi.
Masalah dengan otomatisasi Excel di PowerShell mendapat jawaban dari Roy yang menunjukkan waktunya kesalahan, tapi saya memasukkan perintah Tidur dan mencoba menjalankan perintah buka dan tutup secara terpisah, keduanya tidak berhasil.
Bantuan apa pun, terutama teori yang mendasarinya, sangat kami hargai.
$wb1.close()
? - person Dane Boulton   schedule 27.03.2015$env:USERPROFILE
, dan menjalankan skrip tanpa masalah. Mungkinkah ini buku kerja yang terkait dengan sesuatu yang aneh di file Anda? Mungkin tutup PS atau reboot dan coba lagi untuk memastikan tidak ada yang tersangkut di memori? - person TheMadTechnician   schedule 27.03.2015$wb1.Close($false)
atau$wb1.Close($false,$null,$false)
- person Mathias R. Jessen   schedule 27.03.2015