AccessTr.neT

Tam Versiyon: Dilimleyici İle Özet Tabloları Birbirine Bağlama
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2 3
Dosya açılıştada sizdede aynı mesaj çıkıyor mu?

[img][Resim: do.php?img=10850][/img]
(27/03/2021, 16:51)feraz yazdı: [ -> ]Dosya açılıştada sizdede aynı mesaj çıkıyor mu?

[img][Resim: do.php?img=10850][/img]
evet bendede çıkıyor ama nedenini çözemedim, tablo başlık isimlerini değiştirdiğim için olabilirmi bilmiyorum.
[Resim: do.php?img=10851]

Sayfa kodu;

Sub hesaplaTablo(alan1 As String, alan2 As String, alanSon As String)
    Dim son As Long
    Application.ScreenUpdating = False
    With ThisWorkbook.Sheets("özet_tablo")
        son = .Range(alanSon & Rows.Count).End(3).Row
        .Range(alan1 & Rows.Count).ClearContents
        If son > 8 Then
            .Range(alan1 & son).Formula = "=Sum(" & alan2 & ")"
            .Range(alan1 & son).Value = .Range(alan1 & son).Value
        End If
    End With
    Application.ScreenUpdating = True
End Sub

Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
    hesaplaTablo "G9:G", "C9:F9", "B"
    hesaplaTablo "k9:k", "j9:j9", "i"
End Sub
(27/03/2021, 18:37)feraz yazdı: [ -> ][Resim: do.php?img=10851]

Sayfa kodu;

Sub hesaplaTablo(alan1 As String, alan2 As String, alanSon As String)
    Dim son As Long
    Application.ScreenUpdating = False
    With ThisWorkbook.Sheets("özet_tablo")
        son = .Range(alanSon & Rows.Count).End(3).Row
        .Range(alan1 & Rows.Count).ClearContents
        If son > 8 Then
            .Range(alan1 & son).Formula = "=Sum(" & alan2 & ")"
            .Range(alan1 & son).Value = .Range(alan1 & son).Value
        End If
    End With
    Application.ScreenUpdating = True
End Sub

Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
    hesaplaTablo "G9:G", "C9:F9", "B"
    hesaplaTablo "k9:k", "j9:j9", "i"
End Sub
Teşekkürler olmuş, ancak her bir satır için vek.ücrt.toplamı-Ödenen toplam=Kalanı görmem gerekiyor.
Rica ederim,olması gereken sonucu sayfada gösterebilirmisiniz açıklamalı.
Gifi izleyin olmuşmu yanlış anlamadıysam.
Kodları düzenleyebilirsiniz istediğiniz gibi.
Her iki tablodada Dosya adları sütunundaki karşılıklı veriler aynı olduğu için döngü ile yapmadım.

[Resim: ttt29c5b6a6b01cc6c8.gif]

Sub hesaplaTablo(alan1 As String, alan2 As String, alanSon As String)
    Dim son As Long
    Application.ScreenUpdating = False
    With ThisWorkbook.Sheets("özet_tablo")
        son = .Range(alanSon & Rows.Count).End(3).Row
        .Range(alan1 & Rows.Count).ClearContents
        If son > 8 Then
            .Range(alan1 & son).Formula = "=Sum(" & alan2 & ")"
            .Range(alan1 & son).Value = .Range(alan1 & son).Value
        End If
    End With
    kalanHesap
    Application.ScreenUpdating = True
End Sub

Private Sub Worksheet_PivotTableChangeSync(ByVal Target As PivotTable)
    hesaplaTablo "G9:G", "C9:F9", "B"
'    hesaplaTablo "k9:k", "j9:j9", "i"
End Sub

Sub kalanHesap()
    Dim son As Long
    Application.ScreenUpdating = False
    With ThisWorkbook.Sheets("özet_tablo")
        son = .Range("B" & Rows.Count).End(3).Row
        .Range("K9:K" & Rows.Count).ClearContents
        If son > 8 Then
            .Range("K9:K" & son).Formula = "=SUM(F9)-IF(i9=""Genel Toplam"",0,SUM(j9))"
            .Range("K9:K" & son).Value = .Range("K9:K" & son).Value
            son = .Range("K" & Rows.Count).End(3).Row
            If .Range("B" & son).Value = "Genel Toplam" Then
                .Range("K" & son).Value = ""
            End If
        End If
    End With
    Application.ScreenUpdating = True
End Sub
Sayfalar: 1 2 3