Makro AutoNew tidak berfungsi

Saya mencoba membuat Word membuka dokumen Excel setiap kali dokumen berdasarkan templat tertentu dibuat.

Ini makro saya

Sub AutoNew()
Dim oExcel As Excel.Application
Dim oWB As Workbook
Set oExcel = New Excel.Application
Set oWB = oExcel.Workbooks.Open("E:\Letters.xlsx")
End Sub

Ketika saya mengklik dua kali templatnya, itu menampilkan dokumen berdasarkan templat dengan baik, tetapi makronya tidak berjalan.

Itu muncul di daftar makro di templat, tetapi mencoba menjalankannya tidak menghasilkan apa-apa.


person user2113849    schedule 05.06.2013    source sumber
comment
file excel Anda dibuka di latar belakang, apakah Anda memeriksa apakah instance Excel baru tidak berjalan dan Anda tidak dapat melihatnya? untuk melihatnya Anda dapat menambahkan baris ini: oExcel.Visible = true   -  person Kazimierz Jawor    schedule 05.06.2013
comment
Selalu hal-hal kecil.   -  person user2113849    schedule 05.06.2013


Jawaban (1)


Seperti yang telah disebutkan KazJaw, buat aplikasi terlihat

Sub AutoNew()
  Dim oExcel As Excel.Application
  Dim oWB As Workbook
  Set oExcel = New Excel.Application
  Set oWB = oExcel.Workbooks.Open("E:\Letters.xlsx")
  oExcel.Visible = true
End Sub

Kerugiannya adalah, aplikasi excel diluncurkan sebagai tugas baru (lihat tak manager) jika ada pemanggilan makro lainnya - setiap dokumen dibuka dalam tugasnya masing-masing.

Cara yang benar adalah menggunakan API untuk meluncurkan dokumen di aplikasi terdaftar, misalnya di sini: http://access.mvps.org/access/api/api0018.htm

Atau solusi satu baris, jelek, tetapi berfungsi dengan baik:

Shell "cmd.exe /c start D:\a\test.xlsx"

Perhatikan bahwa template dengan makro harus berekstensi .xltm, bukan .xltx.

person Roman Plischke    schedule 05.06.2013