3 Langkah Mudah meng copy range dari excel ke power point menggunakan macro

Excel dan Power point  adalah 2 product dari Microsoft yang paling banyak di gunakan  di dunia bisnis,baik skala kecil sampai bisnis skala besar.

Hampir di semua bidang bisnis  menggunakan ms excel untuk  merekap,mengolah,menganalisa dan menampilkan  data  berbentuk  chart atau  grafik.Ms Excel ini  sangat membantu  di semua bagian di perusahaan seperti Finance, Manufacturing , Supply Chain , logistic , Human resource dan banyak lagi  yang lain.

Data yang sudah  di olah  dan menghasilkan informasi yang bermanfaat untuk di presentasikan kepada stake holder menggunakan ms power point.

Excel  untuk  mengolah  data.
Power point  untuk menyajikan  data.

Semua  data  yang di presentasikan di power point baik itu berbentuk chart, gambar atau tabel di copy dari excel.

Kegiatan mengcopy  data   dari  excel ke power point  ini terkadang menyita waktu.jika  data yang di copy sedikit dan di lakukan sekali  sebulan mungkin tidak  berpengaruh terhadap produktifitas.

bagaimana  jika  data  yang di ambil sangat banyak dan di lakukan berulang ulang, misal  sekali seminggu  harus  mempresentasikan  hasil kegiatan  produksi yang berisi sampai 30 slide  dan masing masih slide  berisi  3 grafik dan 1 tabel.

Data yang akan di copy   30 slide  X 4  data  X  28  detik  =  3240 detik  atau    56  menit.
hampir 1 jam menghabiskan  waktu hanya  utk mengcopy  data.


Dengan menambahkan kode macro di excel. maka dengan mudah dan cepat serta akurat data di excel di copy ke power point.

3 langkah berikut  bisa  anda coba, walaupun  masih awam tentang macro.


1. Tambahkan kode macro berikut di work book excel anda

Sub XLtoPPT()
Dim PowerPointApp As Object
Dim myPresentation As Object
Dim mySlide As Object
Dim myShape As Object
Dim pilling As Object
If PowerPointApp Is Nothing Then _
Set PowerPointApp = CreateObject(class:="PowerPoint.Application")
On Error GoTo 0
Application.ScreenUpdating = False
    copy2ppt = "copy2ppt"
    Sheets(copy2ppt).Select
    Range("B2").Select
namafile = ActiveCell.Offset(0, 0).Value
'Set myPresentation = PowerPointApp.Presentations.Open(Filename:="C:\Effendi\Macro\case4\Weekly Planning Meeting 200210.pptx")
Set myPresentation = PowerPointApp.Presentations.Open(Filename:=namafile)
Do While ActiveCell.Value <> ""
Sheets(copy2ppt).Select
namafile = ActiveCell.Offset(0, 0).Value
namasheet = ActiveCell.Offset(0, 1).Value
rangetocopy = ActiveCell.Offset(0, 2).Value
slideno = ActiveCell.Offset(0, 3).Value
w = ActiveCell.Offset(0, 4).Value
l = ActiveCell.Offset(0, 5).Value
t = ActiveCell.Offset(0, 6).Value
h = ActiveCell.Offset(0, 7).Value
Sheets(namasheet).Select
' menentukan type shape yg akan di copy
If h = "Gr" Then
 ActiveSheet.Shapes.Range(Array(rangetocopy)).Select
 Else
 ActiveSheet.Range(rangetocopy).Select
End If
Selection.Copy
Set mySlide = myPresentation.Slides(slideno)
 mySlide.Shapes.PasteSpecial DataType:=2
Set myShape = mySlide.Shapes(mySlide.Shapes.Count)
With myShape
   .Width = w
   .Left = l
   .Top = t
End With
Sheets("copy2ppt").Select
ActiveCell.Offset(1, 0).Select
 cnt = cnt + 1
   Loop
MsgBox cnt & "  Object FINISH COPIED ! ", vbInformation
   Exit Sub
PowerPointApp.Visible = True
PowerPointApp.Activate
Application.CutCopyMode = False
End Sub

Jika anda belum tahu cara menambahkan kode macro ke dalam excel , silahkan baca  artikel saya Memulai macro

2.Tentukan Range atau gambar yang akan di copy 

Setelah kode macro di letakan di excel anda, selanjut nya tambahkan satu worksheet dan di beri nama copy2ppt.

Dan input semua data yang akan di copy.perhatikan contoh berikut



Kolom  A: no urut
Kolom  B: di isi nama folder dan nama file  PPT  tujuan
Kolom C : Nama sheet yang akan di copy
Kolom D  :  nama range atau gambar yang akan di copy
Kolom  F,G,H,I  : adalah kolom bantuan  untuk posisi data di PPT
Kolom  K,L,M  :  isi  posisi  gambar  di PPT sesuai yang di inginkan.
Kolom  O2  :  isi dengan angka 71.942446 , ini adalah nilai konversi  pixel di  PPT

3. Jalankan  Macro

untuk mencopy data  120  gambar , 30 slide  hanya butuh waktu  17  detik.Tentu nya sanagat membantu  teman teman  yang bekerja dengan  excel dan  PPT ini.

Jika  bisa lebih cepat kenapa  harus lambat

semoga berhasil, silahkan bertanya jika butuh bantuan.


Wassalam
Effendi Wijaya

Post a Comment

0 Comments