pivota tablo dilimleyici makro atama

maliex

Altın Üye
Katılım
22 Eylül 2019
Mesajlar
222
Excel Vers. ve Dili
professional plus 2016-türkçe
Altın Üyelik Bitiş Tarihi
23-09-2025
merhaba arkadaşlar,

ekteki dosyada yer alan pivot tablodaki dilimleyiciye makro atamak istiyorum,,seçili döviz cinsine göre parabirimi simgesini değiştirebilmek için ...yardım rica ederim
 

Ekli dosyalar

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,500
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Merhabalar,
Bu kodları Modül içerisine;
C++:
Sub Slicer_Sec()
    Dim sc As SlicerCache,  i As Integer, str As String
    Set sc = ActiveWorkbook.SlicerCaches(1)
    For i = 1 To sc.SlicerItems.Count
        With sc.SlicerItems(i)
            If .Selected = True Then
                str = str & .Value & ";"
            End If
        End With
    Next i
    str = Left(str, Len(str) - 1)
    Range("A1").Value = str
    Select Case str
        Case "eur"
            Range("F1:F100").NumberFormat = "[$€-x-euro2]#.##0,00"
        Case "tl"
            Range("F1:F100").NumberFormat = "$#.##0,00"
        Case "usd"
            Range("F1:F100").NumberFormat = "[$$-en-US]#.##0,00"
    End Select
End Sub
Sayfanın kod penceresine bu kodları yapıştırıp deneyiniz.
C++:
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
   Call Slicer_Sec
End Sub
 

maliex

Altın Üye
Katılım
22 Eylül 2019
Mesajlar
222
Excel Vers. ve Dili
professional plus 2016-türkçe
Altın Üyelik Bitiş Tarihi
23-09-2025
murat bey çok teşekkürler,
bende aşağıdaki gibi bir çözüm ürettim cevabı beklerken(ihtiyacı olanlara alternatif olabilir )
C#:
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)

With ActiveWorkbook.SlicerCaches("Dilimleyici_döviz_cinsi")
    If .SlicerItems("eur").Selected = True Then Range("F1:F100").NumberFormat = "[$€-x-euro2]#.##0,00"
    If .SlicerItems("usd").Selected = True Then Range("F1:F100").NumberFormat = "[$$-en-US]#.##0,00"
    If .SlicerItems("tl").Selected = True Then Range("F1:F100").NumberFormat = "$#.##0,00"
End With

End Sub
 
Son düzenleme:

Murat OSMA

Altın Üye
Altın Üye
Katılım
23 Mayıs 2011
Mesajlar
5,500
Excel Vers. ve Dili
Microsoft 365 TR-EN
Altın Üyelik Bitiş Tarihi
31-12-2028
Ellerinize sağlık, böyle çok daha iyi olmuş. :)
İlk denediğim yöntem oydu bu arada, fakat anlamadığım şekilde hata aldığım için uğraşmak istemedim.

Güzel bi' talepti, sanırım forumda daha önce işlenmemiş bir konu idi, bu anlamda zenginlik kattığınız için teşekkürler.
 
Katılım
15 Mayıs 2024
Mesajlar
1
Excel Vers. ve Dili
2019 TR
Hocam merhaba, bende benzer bir çalışma yapıyorum, pivot tablodan dilimleyici aldım ve dilimleyiciden dönem değiştirdikçe speedometer ın ibresini hareket ettirerek görsel sunum yapmak istiyorum. speedometer ı aşağıdaki kodla çalıştırabiliyorum ama dilimleyiciden seçim yaptıktan sonra herhangi bir hücreye tıklamamı bekliyor bunun yerine makroyu nasıl otomatik çalışana veya dilimleyici ile tetiklerim? teşekkürler
C++:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Shapes("ibre").Rotation = Range("V1") * 180
End Sub
 
Üst