Grafiklerde eksen tipini değiştirmek

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...
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
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
 
Katılım
3 Mart 2008
Mesajlar
20
Excel Vers. ve Dili
Excel 2003
Ö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...
 
Katılım
3 Mart 2008
Mesajlar
20
Excel Vers. ve Dili
Excel 2003
Verdiğiniz kodlar ile diğerini birleştirince sorun halloldu.
Çok teşekkürler...
 
Katılım
3 Mart 2008
Mesajlar
20
Excel Vers. ve Dili
Excel 2003
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?
 
Katılım
15 Haziran 2006
Mesajlar
3,704
Excel Vers. ve Dili
Excel 2003, 2007, 2010 (TR)
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 ...)
 
Katılım
3 Mart 2008
Mesajlar
20
Excel Vers. ve Dili
Excel 2003
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...
 
Katılım
3 Mart 2008
Mesajlar
20
Excel Vers. ve Dili
Excel 2003
Arkadaşlar,
Excelde çizdiilen bir grafik nesnesini resim dosyası şeklinde export ettirmek için bir kod yazılabilir mi???
Şimdiden teşekkürler...
 
Üst