• DİKKAT

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

Kod üzerinde değişiklik yapma

  • Konbuyu başlatan Konbuyu başlatan yyhy
  • Başlangıç tarihi Başlangıç tarihi

yyhy

Altın Üye
Katılım
3 Aralık 2005
Mesajlar
946
Excel Vers. ve Dili
Microsoft Office 2021 TR
Microsoft 365 TR
Sub PivotDüzelt()
'
' PivotDüzelt Makro
'

'
Range("M12").Select
ActiveSheet.PivotTables("PivotTable2").ChangePivotCache ActiveWorkbook. _
PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"C:\Users\Pc\Desktop\Kategori Haricindekileri Listeleme 2020\excel\[DENEME Tablo - 1.xlsm]Tablo!R1C1:R5C1" _
, Version:=6)
ActiveSheet.PivotTables("PivotTable2").ChangePivotCache ActiveWorkbook. _
PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"C:\Users\Pc\Desktop\Kategori Haricindekileri Listeleme 2020\excel\[DENEME Tablo - 1.xlsm]Tablo!R1C1:R50000C1" _
, Version:=6)
Range("M12").Select
End Sub


Macro içerisindeki dizinde macrom çalışıyor başka bir klasöre ve dizine aldığım zaman çalışmıyor. Acaba mavi punto ile işaretlediğim bölümü dosyamın olduğu yer olarak düzeltip nasıl çalıştırabilirim. Yani dosyayı nereye götürürsem orada, hangi klasörde ise orada çalışsın hata vermesin istiyorum. Yardımcı olan arkadaşlara teşekkür ederim.
 
Tırnak içindeki mavi renkli kodları bu şekilde deneyin
ThisWorkbook.Path & "\" & "[DENEME Tablo - 1.xlsm]Tablo!R1C1:R50000C1"
 
Ekteki örnek dosyada denedim hata verdi acaba nereyi yanlış yaptım.
 

Ekli dosyalar

Sayın @Suskun sorunu hallettim. Teşekkür ederim. Elinize sağlık.
 
Tırnak işaretleri yanlış yerde kullanılmış
Kod:
Sub PivotDüzelt()
'
' PivotDüzelt Makro
'
    Range("M12").Select
    ActiveSheet.PivotTables("PivotTable2").ChangePivotCache ActiveWorkbook. _
        PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        ThisWorkbook.Path & "\" & "[DENEME Tablo - 1.xlsm]Tablo!R1C1:R5C1" _
        , Version:=6)
    'Range("M12").Select
    ActiveSheet.PivotTables("PivotTable2").ChangePivotCache ActiveWorkbook. _
        PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        ThisWorkbook.Path & "\" & "[DENEME Tablo - 1.xlsm]Tablo!R1C1:R50000C1" _
        , Version:=6)
    'Range("M12").Select
    MsgBox "Pivot Tablo Düzenlemesi Yapıldı.", vbInformation, "Haz.:  "
End Sub

KategoriListesi sayfasının makro bölümüne

Kod:
Private Sub Worksheet_Activate()
Dim pt As PivotTable

For Each pt In ActiveSheet.PivotTables
  pt.RefreshTable
Next pt

With ActiveSheet.PivotTables("PivotTable2").PivotFields("Kategorisiz") 'boş satırı sil
.PivotItems("(blank)").Visible = False
End With

End Sub
kodu yapıştırın sayfa aktif olduğunda pivot table yenilenir ve boş satırlar silinir
 
Sayın @Suskun örnek dosyada deneyip bilgi vereceğim. Yalnız "kodu yapıştırın sayfa aktif olduğunda pivot table yenilenir ve boş satırlar silinir" burayı tam anlayamadım. Yani hazırladığım macroya gerek mi kalmayacak?
 
Sayın @Suskun eklemiş olduğunuz kodu ilgili sayfaya ekledim ama sonuçta hata veriyor. Dosyayı ekliyorum bir bakma şansınız var mı? İlginiz için teşekkür ederim.
 

Ekli dosyalar

Sayın @Suskun kontrol edip dönüş yaparım. Teşekkür ederim.
 
Sayın @Suskun güzel olmuş elinize sağlık yalnız Pivot Table de küçük bir ayrıntı var eğer orayıda düzenleyebilirsek iyi olacak teşekkür ederim. Jpeg Resim olarak ekliyorum.
 

Ekli dosyalar

  • Pivot Table (boş) ve Alt Tarafı Seçili Gelmiyor.jpg
    Pivot Table (boş) ve Alt Tarafı Seçili Gelmiyor.jpg
    511 KB · Görüntüleme: 8
KategoriLitesi sayfasındaki Worksheet_Activate makrosunu aşağıdaki kodla değiştirin.
Kod:
Private Sub Worksheet_Activate()

Dim pt As PivotTable
Dim pf As PivotField

Set pt = ActiveSheet.PivotTables("PivotTable1")
Set pf = pt.PivotFields("Kategorisiz")

KategoriHarici

With pf
    .ClearAllFilters
    On Error Resume Next
        .PivotItems("(blank)").Visible = False
        .PivotItems("0").Visible = False
    On Error GoTo 0
End With

End Sub
 
Sayın @Suskun denemesini yaptım gayet başarılı emeğinize sağlık, çok teşekkür ederim. Mevlana diyarından selamlar saygılar.
 
Rica ederim. Kolay gelsin.
 
Geri
Üst