• DİKKAT

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

kod değişikliği

Katılım
15 Eylül 2007
Mesajlar
1,312
Excel Vers. ve Dili
2013 türkçe
alttoplamları aldığım zaman tamamını siyah koyu yapsa
birde bu kodu başka bir sayfada uygulamak istediğim zaman mesele burada a2 den başlıyor anacak orada a2 olmazda b3 olur mesela bunun gibi 5 sütun olmazda 4 sütun olur nereleri değiştirmem lazım yardımlarınız için teşekkür ederim
 

Ekli dosyalar

Textbox kodlarınızı aşağıdaki gibi değiştirip, deneyin nereleri değiştirmeniz gerektiği daha anlaşılır olacaktır.
Kod:
Private Sub TextBox1_Change()
    x = Val(TextBox1)
    If x = 0 Then Exit Sub
    Cells.RemoveSubtotal
    son = [A65536].End(xlUp).Row
    [COLOR=red]Range("A2:G" & son).[/COLOR]Sort Key1:=[COLOR=red]Cells(2, x),[/COLOR] Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    [COLOR=red]Range("A2:G" & son).[/COLOR]Subtotal GroupBy:=[COLOR=red]x[/COLOR], Function:=xlSum, TotalList:=Array(5, 6, 7), _
        Replace:=True, PageBreaks:=False, SummaryBelowData:=True
    For i = 1 To 3 * son
        If InStr(1, Cells(i, x), "Toplam") > 0 Or InStr(1, Cells(i, x), "Genel") > 0 Then Cells(i, x).EntireRow.Font.Bold = True
    Next

End Sub
 
Son düzenleme:
ilginiz için teşekkür ederim ancak alttaki iki toplamı koyu laştırmıyor birde bu kodu örnek verebilirmisiniz bir 2. sayfasına başka satırlarla az sütun örneği verebilirmisiniz
 
Bundan önceki mesajımda ve bu mesajda gönderdiğim dosyada son satırların kalın yapılma durumunu düzelttim, ayrıca bu dosyanın sayfa2 sinde ayrı bir alttoplam alma yaptım, makro1 kodlarını inceleyerek bunları da görebilirsiniz.
 

Ekli dosyalar

benim öğrenmek istediğim şu birinci sayfadakinin aynısını 2. sayfanın d9 dan başlayıp verdiğiniz örneğe nasıl uyarlarız
 
sayfa 1 deki örneğe kodunu nasıl uyarlarız benim öğrenmek isteğim bu yani bu kodu başka çalışmalrda nerelerini değiştirerek uygularız
 

Ekli dosyalar

Aşağıda ilgili kısmın kodları var, kodlarda kırmızı olan kısımlar değiştirilerek uyarlayabilirsiniz.

Range kısmı tablonun bulunduğu alan

Key1 sıralamanın neye göre yapılacağını belirler, burada önemli olan siz formdan 1. sütun olarak seçseniz de tablo 2.sütundan başlıyor ise x+1 yapmak lazım

Subtotal kısmında da range olayı aynı

GroupBy dediği hangi sütuna göre alttoplam alınacağını ifade eder. Burada yukarıdaki durum geçerli değil tablonun içinde kaçıncı sütun olduğuna göre yazıyoruz yani ilk sütunda 1 gibi, tablonun konumu önemli değil

Totallist de Array de yazılan sayılarda toplamının alınmasını istediğin sütunlar oluyor, bunda da tablonun içindeki sıra önemli.

Kod:
    [COLOR=red][B]Range("A2:G" & son).[/B][/COLOR]Sort Key1:=[COLOR=red][B]Cells(2, x)[/B][/COLOR], Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    [COLOR=red][B]Range("A2:G" & son).[/B][/COLOR]Subtotal GroupBy:=[COLOR=red][B]x[/B][/COLOR], Function:=xlSum, TotalList:=Array([COLOR=red][B]5, 6, 7[/B][/COLOR]), _
        Replace:=True, PageBreaks:=False, SummaryBelowData:=True
 
Son gönderdiğiniz dosyanın kodları aşağıdaki gibi olacak.
Kod:
Private Sub CommandButton1_Click()
    Selection.RemoveSubtotal
    TextBox1.Text = ""
End Sub
Private Sub TextBox1_Change()
    x = Val(TextBox1)
    If x = 0 Then Exit Sub
    Cells.RemoveSubtotal
    son = [C65536].End(xlUp).Row
    Range("C3:G" & son).Sort Key1:=Cells(4, x + 2), Order1:=xlAscending, Header:= _
        xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
    Range("C3:G" & son).Subtotal GroupBy:=x, Function:=xlSum, TotalList:=Array(3, 4, 5), _
        Replace:=True, PageBreaks:=False, SummaryBelowData:=True
    For i = 1 To 3 * son
        If InStr(1, Cells(i, x+2), "Toplam") > 0 Or InStr(1, Cells(i, x+2), "Genel") > 0 Then Cells(i, x+2).EntireRow.Font.Bold = True
    Next
End Sub
 
Son düzenleme:
En son gönderdiğiniz kodu uyguladım alttopmları siyah yapmıyor ve bunu bir taplo gibi değilde ben bu işlemi aşağıya doğru yazıp gideceğim istediğim zaman alttoplam alıp kladıracapım va yazmaya devam edeceğim
 
Kodları güncelledim, bu haliyle kalın yapacaktır. Tablonun dinamik olması ile ilgili de zaten bu haliyle aşağı doğru eklenen satırları dahil edecektir.
 
Geri
Üst