Terjadi kesalahan saat menyalin-menempelkan data dari ppt lain

Saya mencoba menyalin slide 1 dari ppt eksternal ke ppt saat ini ke halaman catatan. Namun, saya menerima pesan kesalahan ini:

Slide (anggota tidak diketahui): Permintaan tidak valid. Papan klip kosong atau berisi data yang tidak boleh ditempel di sini.

Ppt eksternal tempat saya menyalin memang berisi data.

Skrip VBA:

Sub copySlide()
Dim objPresentation As Presentation

Set objPresentation = Presentations.Open("/path/slides.ppt")

objPresentation.Slides.Item(1).Copy
Presentations.Item(1).Slides.Paste

objPresentation.Close
End Sub

person Rahul Dagli    schedule 16.03.2017    source sumber
comment
bukankah baris ini: Presentations.Item(1).Slides.Paste yang salah? Anda ingin menempelkan slide Anda di Presentasi aktif?   -  person basslo    schedule 16.03.2017
comment
Ya, saya ingin menyalin slide dari ppt eksternal ke ppt yang sedang terbuka di mana saya menjalankan makro.   -  person Rahul Dagli    schedule 16.03.2017
comment
@RahulDagli lihat jawaban saya di bawah, beri tahu saya jika itu berfungsi sesuai keinginan Anda   -  person Shai Rado    schedule 16.03.2017


Jawaban (1)


Coba kode dibawah ini, semoga presentasi anda di ("/path/slides.ppt") tidak error.

Saya menambahkan 2 opsi, letakkan di akhir, atau sebagai slide kedua - Anda dapat memodifikasi baris Paste dengan mudah

Kode

Sub copySlide()

Dim MyPres          As Presentation
Dim objPresentation As Presentation

Set MyPres = ActivePresentation
Set objPresentation = Presentations.Open("/path/slides.ppt")

objPresentation.Slides(1).Copy
'MyPres.Slides.Paste MyPres.Slides.Count + 1 ' <-- place it at the end
MyPres.Slides.Paste 2 ' <-- place it as the second slide

objPresentation.Close
Set objPresentation = Nothing ' clear object

End Sub
person Shai Rado    schedule 16.03.2017
comment
Saya mencoba kode Anda tetapi saya masih mendapatkan kesalahan yang sama pada baris ini MyPres.Slides.Paste 2 ' <-- place it as the second slide - person Rahul Dagli; 16.03.2017
comment
@RahulDagli ada ' di baris kodenya kan? antara MyPres.Slides.Paste 2 , dan komentar sesudahnya ? - person Shai Rado; 16.03.2017
comment
Ya, saya menyalin dan menempelkan kode Anda dengan tepat, hanya jalur yang saya ubah. - person Rahul Dagli; 16.03.2017
comment
@RahulDagli apa yang terjadi jika Anda mencoba jalur sebelumnya? coba gunakan 'MyPres.Slides.Paste MyPres.Slides.Count + 1 lihat apakah sudah menempel sampai akhir - person Shai Rado; 16.03.2017
comment
@RahulDagli Saya tidak yakin Anda tidak gagal menyalin slide, apa yang terjadi jika Anda menambahkan MsgBox objPresentation.Name & " has " & objPresentation.Slides.Count setelah baris Set objPresentation = Presentations.Open? - person Shai Rado; 16.03.2017
comment
Mari kita melanjutkan diskusi ini dalam chat. - person Rahul Dagli; 16.03.2017
comment
Terselesaikan! caranya buka dulu tampilan Normal, jalankan makro lalu alihkan ke tampilan catatan. - person Rahul Dagli; 16.03.2017