• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Grafiklerde eksen tipini değiştirmek

  • Konbuyu başlatan Konbuyu başlatan yersoy
  • Başlangıç tarihi Başlangıç tarihi
Katılım
3 Mart 2008
Mesajlar
20
Excel Vers. ve Dili
Excel 2003
Excelde çizdirdiğimiz grafiklerin eksenlerinin tiplerini (logaritmik ya da lineer) ToggleButton yardımıyla nasıl değiştirebiliriz?

Bulduğum bir örnekte grafiğin sadece y-ekseninin tipi değişiyor. X-ekseni ise sabit kalıyor... Bunun için yazdığım kod:

Private Sub ToggleButton1_Click()
If ToggleButton1.Value = False Then
ToggleButton1.Caption = "Log-scale"
ActiveSheet.ChartObjects("Grafik 1").Activate
ActiveChart.Axes(xlValue).Select
With ActiveChart.Axes(xlValue)
.ScaleType = xlScaleLogarithmic
End With
Else
ToggleButton1.Caption = "linear-scale"
ActiveSheet.ChartObjects("Grafik 1").Activate
ActiveChart.Axes(xlValue).Select
With ActiveChart.Axes(xlValue)
.ScaleType = xlLinear
End With
End If
End Sub


şeklindeydi. Ancak dediğim gibi, sadeece y-eksenini kontrol ediyor...

Selamlar...
 
Gerçi, siz kullandığınız grafik türünü belirtmemişsiniz ama, ekteki örnekte xy dağılım grafiği üzerinden gidilmiştir. X eksenini, logaritmik veya lineer göstermek için ToogleButton'a aşağıdaki kodlar yerleştirildi.

Kod:
Private Sub ToggleButton1_Click()
Dim grf As ChartObject
Set grf = ActiveSheet.ChartObjects("Grafik 2")
If ToggleButton1.Value = False Then
    ToggleButton1.Caption = "Log-scale"
    grf.Chart.Axes(xlCategory).ScaleType = xlLogarithmic
Else
    ToggleButton1.Caption = "linear-scale"
    grf.Chart.Axes(xlCategory).ScaleType = xlLinear
End If
Set grf = Nothing
End Sub
 
Öncelikle çok teşekkür ederim...
Ben sorumu yeterince açık yazamamışım sanırım.
Elimdeki grafik x-y dağılım grafiği. Ve her iki eksenin de aynı anda log/lin olarak togglebutton yardımıyla değişmesini istiyorum. Verdiğiniz örnekte de bu sefer sadece x-ekseni değişiyor :) Ben de bir taraftan kod üzerinde çalışacağım. Becerebilir miyim bilmiyorum tabi :)

Saygılar...
 
Verdiğiniz kodlar ile diğerini birleştirince sorun halloldu.
Çok teşekkürler...
 
Tekrar merhabalar...
Yeni bir problemimiz ortaya çıktı!

Sayfayı güvenlik için kitlediğim zaman kodlar çalışmıyor! Ancak kili kaldırınca hiç bir problem yok... Bunu nasl aşabiliriz?
 
Tekrar merhabalar...
Yeni bir problemimiz ortaya çıktı!

Sayfayı güvenlik için kitlediğim zaman kodlar çalışmıyor! Ancak kili kaldırınca hiç bir problem yok... Bunu nasl aşabiliriz?

Allah bundan başka dert vermesin yeter ki :)

Kodların ilk satırına Activesheet.UnProtect, son satırına da Activesheet.Protect yazın. (Sayfa Koruma Şifresi varsa; bu komutların sonlarına tırnak işareti içerisinde yazın. Yani ... Unprotect "1234" gibi ...)
 
Ne diyeyim teşekkür edelim öyleyse :)

Peki grafikte, log eksenleri seçtiğimizde eksenlerin kesişme yerleri otomatik olarak en küçük değerlerde nasıl düzenlenir? ne gibi bir kod gerekir? Toggle ile Lineer eksenleri seçtiğimizde sorun olmuyor ama log eksenlere geçince, kesişme yerleri otomatik olarak 1 kabul edildiği için grafik + işareti gibi oluyor :) Yani eksenler birbirlerini en küçük değerlerinde kesmiyorlar. Bunun için bir öneriniz varmı?

Saygılar...
 
Arkadaşlar,
Excelde çizdiilen bir grafik nesnesini resim dosyası şeklinde export ettirmek için bir kod yazılabilir mi???
Şimdiden teşekkürler...
 
Geri
Üst