Skip to main content

Excel çalışma sayfalarından tek bir grafiği veya tüm grafikleri PowerPoint'e nasıl aktarabilirsiniz?

Author: Siluvia Last Modified: 2025-06-10

Bazen, belirli bir amaç için Excel'den bir grafiği veya tüm grafikleri PowerPoint'e aktarmanız gerekebilir. Bu makalede bunun nasıl yapılacağı anlatılmaktadır.

Tek bir grafiği veya Excel çalışma sayfasındaki tüm grafikleri VBA kodu ile PowerPoint'e aktarma


Tek bir grafiği veya Excel çalışma sayfasındaki tüm grafikleri VBA kodu ile PowerPoint'e aktarma

Bu bölüm, tek bir grafiği veya tüm grafikleri çalışma kitabından PowerPoint'e aktarmak için VBA kodlarını tanıtmaktadır. Lütfen aşağıdaki adımları izleyin.

1. Microsoft Visual Basic for Applications penceresini açmak için Alt + F11 tuşlarına birlikte basın.

2. Microsoft Visual Basic for Applications penceresinde, aşağıdaki ekran görüntüsünde gösterildiği gibi Araçlar > Referanslar'a tıklayın.

click Tools > References

3. Referanslar – VBAProject iletişim kutusunda aşağı kaydırarak Microsoft PowerPoint Nesne Kitaplığı seçeneğini bulun ve işaretleyin, ardından Tamam düğmesine tıklayın. Ekran görüntüsüne bakın:

check the Microsoft PowerPoint Object Library option

4. Ardından Ekle > Modül'e tıklayın.

5. Tek bir grafiği PowerPoint'e aktarmak istiyorsanız, lütfen çalışma sayfasında grafiği seçin, ardından Microsoft Visual Basic for Applications penceresine geri dönün, aşağıdaki VBA kodunu kopyalayıp Modül penceresine yapıştırın.

VBA Kodu: Excel Çalışma Sayfasından Tek Bir Grafiği PowerPoint'e Aktarma

Sub SingleActiveChartToPowerPoint_EarlyBinding1()
'Updated by Extendoffice 2017/9/15
  Dim pptApp As PowerPoint.Application
  Dim pptPres As PowerPoint.Presentation
  Dim pptSlide As PowerPoint.Slide
  Dim pptShape As PowerPoint.Shape
  Dim pptShpRng As PowerPoint.ShapeRange
  Dim xActiveSlideNow As Long
  On Error Resume Next
  If ActiveChart Is Nothing Then
    MsgBox "Select a chart and try again!", vbExclamation, "KuTools For Excel"
    Exit Sub
  End If
  Set pptApp = GetObject(, "PowerPoint.Application")
  If pptApp Is Nothing Then
    Set pptApp = CreateObject("PowerPoint.Application")
    Set pptPres = pptApp.Presentations.Add
    Set pptSlide = pptPres.Slides.Add(1, ppLayoutBlank)
  Else
    If pptApp.Presentations.Count > 0 Then
      Set pptPres = pptApp.ActivePresentation
      If pptPres.Slides.Count > 0 Then
        xActiveSlideNow = pptApp.ActiveWindow.View.Slide.SlideIndex
        Set pptSlide = pptPres.Slides(xActiveSlideNow)
      Else
        Set pptSlide = pptPres.Slides.Add(1, ppLayoutBlank)
      End If
    Else
      Set pptPres = pptApp.Presentations.Add
      Set pptSlide = pptPres.Slides.Add(1, ppLayoutBlank)
    End If
  End If
  ActiveChart.ChartArea.Copy
  With pptSlide
    .Shapes.Paste
    Set pptShape = .Shapes(.Shapes.Count)
    Set pptShpRng = .Shapes.Range(pptShape.Name)
  End With
  With pptShpRng
    .Align msoAlignCenters, True
    .Align msoAlignMiddles, True
  End With
  pptShpRng.Select
End Sub

Çalışma kitabındaki tüm grafikleri aktarmak istiyorsanız, lütfen aşağıdaki VBA kodunu kopyalayıp Modül penceresine yapıştırın.

VBA Kodu: Excel Çalışma Sayfalarından Tüm Grafikleri PowerPoint'e Aktarma

Option Explicit
'Updated by Extendoffice 2017/9/15
Dim pptApp As PowerPoint.Application
Dim pptPres As PowerPoint.Presentation
Dim pptSlide As PowerPoint.Slide
Dim pptSlideCount As Integer
Sub ChartsToPowerPoint()
    Dim xSheet As Worksheet
    Dim xChartsCount As Integer
    Dim xChart As Object
    Dim xActiveSlideNow As Integer
    On Error Resume Next
    For Each xSheet In ActiveWorkbook.Worksheets
        xChartsCount = xChartsCount + xSheet.ChartObjects.Count
    Next xSheet
    If xChartsCount = 0 Then
        MsgBox "Sorry, there are no charts to export!", vbCritical, "Ops"
        Exit Sub
    End If
    Set pptApp = GetObject(, "PowerPoint.Application")
    If pptApp Is Nothing Then
      Set pptApp = CreateObject("PowerPoint.Application")
      Set pptPres = pptApp.Presentations.Add
      Set pptSlide = pptPres.Slides.Add(1, ppLayoutBlank)
    Else
        If pptApp.Presentations.Count > 0 Then
          Set pptPres = pptApp.ActivePresentation
          If pptPres.Slides.Count > 0 Then
            xActiveSlideNow = pptApp.ActiveWindow.View.Slide.SlideIndex
            Set pptSlide = pptPres.Slides(xActiveSlideNow)
          Else
            Set pptSlide = pptPres.Slides.Add(1, ppLayoutBlank)
          End If
        Else
          Set pptPres = pptApp.Presentations.Add
          Set pptSlide = pptPres.Slides.Add(1, ppLayoutBlank)
        End If
    End If
    For Each xSheet In ActiveWorkbook.Worksheets
        For Each xChart In xSheet.ChartObjects
            Call pptFormat(xChart.Chart)
        Next xChart
    Next xSheet
    For Each xChart In ActiveWorkbook.Charts
        Call pptFormat(xChart)
    Next xChart
    
    Set pptSlide = Nothing
    Set pptPres = Nothing
    Set pptApp = Nothing
    MsgBox "The charts were copied successfully to the new presentation!", vbInformation, "KuTools For Excel"
End Sub
Private Sub pptFormat(xChart As Chart)
    Dim xCharTiTle As String
    Dim I As Integer
    On Error Resume Next
    xCharTiTle = xChart.ChartTitle.Text
    xChart.ChartArea.Copy
    pptSlideCount = pptPres.Slides.Count
    Set pptSlide = pptPres.Slides.Add(pptSlideCount + 1, ppLayoutBlank)
    pptSlide.Select
    pptSlide.Shapes.PasteSpecial ppPasteJPG
    If xCharTiTle <> "" Then
        pptSlide.Shapes.AddTextbox msoTextOrientationHorizontal, 12.5, 20, 694.75, 55.25
    End If
    For I = 1 To pptSlide.Shapes.Count
        With pptSlide.Shapes(I)
            Select Case .Type
                Case msoPicture:
                    .Top = 87.84976
                    .left = 33.98417
                    .Height = 422.7964
                    .Width = 646.5262
                Case msoTextBox:
                    With .TextFrame.TextRange
                        .ParagraphFormat.Alignment = ppAlignCenter
                        .Text = xCharTiTle
                        .Font.Name = "Tahoma (Headings)"
                        .Font.Size = 28
                        .Font.Bold = msoTrue
                    End With
                End Select
        End With
    Next I
End Sub

6. Kodu çalıştırmak için F5 tuşuna basın veya Çalıştır düğmesine tıklayın. Ardından, seçilen grafik veya tüm grafikler içe aktarılmış olarak yeni bir PowerPoint açılacaktır. Aşağıdaki ekran görüntüsünde gösterildiği gibi bir Kutools for Excel iletişim kutusu alacaksınız, lütfen Tamam düğmesine tıklayın.

 a dialog box popps out to remind the charts are imported to PowerPoint

a screenshot of kutools for excel ai

Kutools AI ile Excel Sihirini Keşfedin

  • Akıllı Yürütme: Hücre işlemleri gerçekleştirin, verileri analiz edin ve grafikler oluşturun—tümü basit komutlarla sürülür.
  • Özel Formüller: İş akışlarınızı hızlandırmak için özel formüller oluşturun.
  • VBA Kodlama: VBA kodunu kolayca yazın ve uygulayın.
  • Formül Yorumlama: Karmaşık formülleri kolayca anlayın.
  • Metin Çevirisi: Elektronik tablolarınız içindeki dil engellerini aşın.
Yapay zeka destekli araçlarla Excel yeteneklerinizi geliştirin. Şimdi İndirin ve daha önce hiç olmadığı gibi bir verimlilik deneyimi yaşayın!

İlgili makaleler:

En İyi Ofis Verimlilik Araçları

🤖 Kutools AI Asistanı: Veri analizinde devrim yaratın: Akıllı Yürütme   |  Kod Oluştur  |  Özel Formüller Oluştur  |  Verileri Analiz Et ve Grafikler Oluştur  |  Geliştirilmiş İşlevleri Çağır
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya İşaretle   |  Boş Satırları Sil   |  Sütunları veya Hücreleri Verileri Kaybetmeden Birleştir   |   Formül Olmadan Yuvarla ...
Süper ARA: Çok Kriterli Düşeyara    Çoklu Değer Düşeyara  |   Çoklu sayfa araması   |   Bulanık Eşleme ....
Gelişmiş Açılır Liste: Hızlıca Açılır Liste Oluştur   |  Bağımlı Açılır Liste   |  Çoklu Seçimli Açılır Liste ....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekle  |  Sütunları Taşı  |  Gizli Sütunların Görünürlük Durumunu Değiştir  |  Aralıkları ve Sütunları Karşılaştır ...
Öne Çıkan Özellikler: Izgara Odaklama   |  Tasarım Görünümü   |   Gelişmiş formül çubuğu    Çalışma Kitabı & Çalışma Sayfası Yöneticisi   |  Otomatik Metin Kütüphanesi (Auto Text)   |  Tarih Seçici   |  Veri Birleştir   |  Hücreleri Şifrele/Şifre Çöz    Listeye Göre E-posta Gönder   |  Süper Filtre   |   Özel Filtre (kalın/italik/üstü çizili filtrele...) ...
En İyi15 Araç Seti12 Metin Aracı (Metin Ekle, Belirli Karakterleri Sil, ...)   |   50+ Grafik Türü (Gantt Grafiği, ...)   |   40+ Pratik Formül (Doğum tarihine dayanarak yaş hesapla, ...)   |   19 Ekleme Aracı (QR Kodu Ekle, Yoldan Resim Ekle, ...)   |   12 Dönüşüm Aracı (Kelimeye Dönüştür, Para Birimi Dönüştürme, ...)   |   7 Birleştir & Böl Aracı (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...)   |   ... ve daha fazlası

Kutools for Excel ile Excel becerilerinizi geliştirin ve daha önce hiç olmadığı kadar verimli olun. Kutools for Excel, üretkenliğinizi artırmak ve zamanınızı kaydetmek için300'den fazla gelişmiş özellik sunar.  En çok ihtiyacınız olan özelliği almak için buraya tıklayın...


Office Tab, Office'e sekmeli arayüz getirir ve işinizi çok daha kolaylaştırır

  • Word, Excel, PowerPoint'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
  • Aynı pencerenin yeni sekmelerinde birden fazla belge açın ve oluşturun, yeni pencerelerde değil.
  • Verimliliğinizi %50 artırır ve her gün yüzlerce fare tıklamasını azaltır!