Skip to main content

Excel'de belirli bir hücre değerine bağlı olarak şeklin boyutunu otomatik olarak nasıl değiştirebilirsiniz?

Author: Siluvia Last Modified: 2025-08-07

Eğer belirli bir hücrenin değerine göre şekil boyutunu otomatik olarak değiştirmek istiyorsanız, bu makale size yardımcı olabilir.

VBA kodu ile belirli bir hücre değerine dayalı şekil boyutunu otomatik değiştirme


VBA kodu ile belirli bir hücre değerine dayalı şekil boyutunu otomatik değiştirme

Aşağıdaki VBA kodu, geçerli çalışma sayfasındaki belirli bir hücre değerine göre belirli bir şeklin boyutunu değiştirmenize yardımcı olabilir. Lütfen şu adımları izleyin.

1. Boyutunu değiştirmek istediğiniz şekle sahip sayfa sekmesine sağ tıklayın ve ardından sağ tıklama menüsünden Kodu Görüntüle'yi seçin.

2. Microsoft Visual Basic for Applications penceresinde, aşağıdaki VBA kodunu Kod penceresine kopyalayıp yapıştırın.

VBA kodu: Excel'de belirli bir hücre değerine göre şekil boyutunu otomatik değiştirme

Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Target.Row = 2 And Target.Column = 1 Then
        Call SizeCircle("Oval 2", Val(Target.Value))
    End If
End Sub
Sub SizeCircle(Name As String, Diameter)
    Dim xCenterX As Single
    Dim xCenterY As Single
    Dim xCircle As Shape
    Dim xDiameter As Single
    On Error GoTo ExitSub
    xDiameter = Diameter
    If xDiameter > 10 Then xDiameter = 10
    If xDiameter < 1 Then xDiameter = 1
    Set xCircle = ActiveSheet.Shapes(Name)
    With xCircle
        xCenterX = .Left + (.Width / 2)
        xCenterY = .Top + (.Height / 2)
        .Width = Application.CentimetersToPoints(xDiameter)
        .Height = Application.CentimetersToPoints(xDiameter)
        .Left = xCenterX - (.Width / 2)
        .Top = xCenterY - (.Height / 2)
    End With
ExitSub:
End Sub

Not: Kodda, “Oval 2” boyutunu değiştireceğiniz şeklin adıdır. Ve Satır = 2, Sütun = 1, “Oval 2” şeklinin boyutunun A2 hücresindeki değere göre değişeceği anlamına gelir. Lütfen bunları ihtiyaçlarınıza göre değiştirin.

Farklı hücre değerlerine göre birden fazla şekli otomatik olarak yeniden boyutlandırmak için lütfen aşağıdaki VBA kodunu uygulayın.

VBA kodu: Excel'de farklı belirtilen hücrelerin değerlerine göre birden fazla şekli otomatik yeniden boyutlandırma

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim xAddress As String
    On Error Resume Next
    If Target.CountLarge = 1 Then
        xAddress = Target.Address(0, 0)
        If xAddress = "A1" Then
            Call SizeCircle("Oval 1", Val(Target.Value))
        ElseIf xAddress = "A2" Then
            Call SizeCircle("Smiley Face 3", Val(Target.Value))
        ElseIf xAddress = "A3" Then
            Call SizeCircle("Heart 2", Val(Target.Value))
        End If
    End If
End Sub

Sub SizeCircle(Name As String, Diameter)
    Dim xCenterX As Single
    Dim xCenterY As Single
    Dim xCircle As Shape
    Dim xDiameter As Single
    On Error GoTo ExitSub
    xDiameter = Diameter
    If xDiameter > 10 Then xDiameter = 10
    If xDiameter < 1 Then xDiameter = 1
    Set xCircle = ActiveSheet.Shapes(Name)
    With xCircle
        xCenterX = .Left + (.Width / 2)
        xCenterY = .Top + (.Height / 2)
        .Width = Application.CentimetersToPoints(xDiameter)
        .Height = Application.CentimetersToPoints(xDiameter)
        .Left = xCenterX - (.Width / 2)
        .Top = xCenterY - (.Height / 2)
    End With
ExitSub:
End Sub

Notlar:

1) Kodda, “Oval 1”, “Smiley Face 3” ve “Heart 3” boyutlarını otomatik olarak değiştireceğiniz şekillerin adlarıdır. Ve A1, A2 ve A3, şekilleri otomatik olarak yeniden boyutlandırmak için kullanacağınız hücrelerdir.
2) Daha fazla şekil eklemek isterseniz, kodun ilk "End If" satırının üstüne "ElseIf xAddress = "A3" Then" ve "Call SizeCircle("Heart 2", Val(Target.Value))" satırlarını ekleyin. Ve hücre adresini ve şekil adını ihtiyaçlarınıza göre değiştirin.

3. Microsoft Visual Basic for Applications penceresini kapatmak için Alt + Q tuşlarına aynı anda basın.

Şimdi itibaren, A2 hücresindeki değeri değiştirdiğinizde, Oval 2 şeklinin boyutu otomatik olarak değişecektir. Ekran görüntüsüne bakın:

 change the value in a specific cell , the size of shape will be changed automatically

Veya A1, A2 ve A3 hücrelerindeki değerleri değiştirerek "Oval 1", "Smiley Face 3" ve "Heart 3" şekillerinin boyutlarını otomatik olarak yeniden boyutlandırabilirsiniz. Ekran görüntüsüne bakın:

change the value in a specific cells , the size of shapes will be changed automatically

Not: Hücre değeri 10'dan büyük olduğunda şekil boyutu artık değişmez.


Geçerli Excel çalışma kitabındaki tüm şekilleri listeleme ve dışa aktarma:

Kutools for Excel'in Grafik Dışa Aktar aracı, mevcut çalışma kitabındaki tüm şekilleri hızlıca listeleyebilmenizi sağlar ve aşağıdaki ekran görüntüsünde gösterildiği gibi hepsini tek seferde belirli bir klasöre aktarabilirsiniz. Şimdi indirip deneyin! (30-gün ücretsiz deneme)

export all shapes in current Excel by kutools


İlgili makaleler:

En İyi Ofis Verimlilik Araçları

🤖 Kutools AI Asistanı: Veriye dayalı analizi devrimsel olarak değiştirin: Akıllı Yürütme |Kod Oluştur |Özel Formüller Oluştur |Verileri Analiz Edin ve Grafikler Oluşturun |Geliştirilmiş İşlevler’i çağırın
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: Çoklu Kriter VLookup | Çoklu Değer VLookup | Çoklu sayfa araması | Bulanık Eşleme....
Gelişmiş Açılır Liste: Hızlıca Açılır Liste Oluşturun | 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ı & Sütunları Karşılaştır...
Özel Seçilen Ö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 | 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 filtreleme...)...
En Gözde15 Araç Seti:12 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 Araçları (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...) | ... ve daha fazlası
Kutools’u tercih ettiğiniz dilde kullanın – İngilizce, İspanyolca, Almanca, Fransızca, Çince ve40’tan fazla başka dili destekler!

Kutools for Excel ile Excel becerilerinizi güçlendirin, daha önce hiç yaşamadığınız bir verimlilik deneyimini yaşayın. Kutools for Excel, üretkenliğinizi artıracak ve zamanı kaydetmenizi sağlayacak300’den fazla gelişmiş özellik sunar. En çok ihtiyaç duyduğunuz özelliği almak için buraya tıklayın...


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

  • Word, Excel, PowerPoint’te sekmeli düzenleme ve okuma işlevini etkinleştirin.
  • Aynı pencere içerisinde yeni sekmelerde birden fazla belge açın veya oluşturun, yeni pencerelerde açmak yerine.
  • Verimliliğinizi %50 artırın, her gün yüzlerce fare tıklamasını sizin için azaltın!