Listede Çizim

Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
Selam Üstadlar, Bordro sayfasına aktarım yapıyorum fakat bordro sayfasının A5 hücresinden başlayarak N sütununa kadar Çizmek istiyorum. A sütununun son dolu satırının bir alt satırıda dahil olacak. Aşağıdaki kodla yapmak istedim fakat tek bir satırı çiziyor. Çizim olmassa bu alanların hücre çizgilerinin yazıcıda gözükmeside olur. Yardımcı olursanız sevinirm.

a = WorksheetFunction.CountA(Sheets("Bordro").Range("B5:B65536"))
If a Mod 1 = 0 Then
adr = "a" & a + 5 & ":N" & a + 5
s2.Range(adr).Borders(xlEdgeTop).Weight = xlThin
s2.Range(adr).Borders(xlEdgeBottom).Weight = xlThin
s2.Range(adr).Borders(xlEdgeLeft).Weight = xlThin
s2.Range(adr).Borders(xlEdgeRight).Weight = xlThin
End If
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba.
Aşağıdaki gibi denermisiniz.:cool:
Kod:
a = WorksheetFunction.CountA(Sheets("Bordro").Range("B5:B65536"))
If a Mod 1 = 0 Then
adr = "a" & a + 4 & ":N" & a + 5
s2.Range(adr).Borders(xlEdgeTop).Weight = xlThin
s2.Range(adr).Borders(xlEdgeBottom).Weight = xlThin
s2.Range(adr).Borders(xlEdgeLeft).Weight = xlThin
s2.Range(adr).Borders(xlEdgeRight).Weight = xlThin
End If
 
Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
İlgin için teşekkür ederim sezar fakat olmadı; 4. satır ile 5. satırı tek bir çizgiyle çiziyor. Arasına çizgi atmıyor.
 
Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
Butonun tüm kodlarını ekledim

Private Sub CommandButton1_Click() ' Belirli Sütunların Aktarılması ve Toplam Alınması
Set s1 = Sheets("Parametre")
Set s2 = Sheets("Bordro")
s2.Select
Range("A2:O1000").Select 'Belirtilen hücre aralığını seç
Selection.ClearContents 'Belirtilen hücre aralığını sil
[a1] = b
a = WorksheetFunction.CountA(Sheets("Bordro").Range("B5:B65536"))
If a Mod 1 = 0 Then
adr = "a" & a + 4 & ":N" & a + 5
s2.Range(adr).Borders(xlEdgeTop).Weight = xlThin
s2.Range(adr).Borders(xlEdgeBottom).Weight = xlThin
s2.Range(adr).Borders(xlEdgeLeft).Weight = xlThin
s2.Range(adr).Borders(xlEdgeRight).Weight = xlThin
End If
Sheets("Veri").Select 'Veri Sayfasını Seç
s2.[a1] = [b14].Text 'Veri Sayfasının B14 hücresini Bodro sayfasının A1 hücresine kayded
s2.[b2] = [a1].Text
s2.[c2] = [b1]
s2.[l3] = [b12]
s2.[n3] = [b13]
s2.[m2] = [a12]
s1.Select 'Parametre Sayfasını Seç
a = Array(1, 2, 4, 8, 9, 24, 11, 12, 13, 14, 15, 16, 17, 18)
sat = 3 'Üç satır boş bırak 4. satırdan başla
For x = 1 To [a65536].End(3).Row 'Paremetre sayfasının A sütunundan başla
If Cells(x, 24) > 0 Then '24. sütun sıfırdan büyük ise ekle
sat = sat + 1 'bir artarak say
For y = 1 To 14 '14 sütun kopyala
s2.Cells(sat, y) = s1.Cells(x, a(y - 1))
Next
End If
Next x
a = Array(7, 8, 9, 10, 11, 12, 13, 14)
For y = 0 To 7
s2.Cells(sat + 1, a(y)) = WorksheetFunction.Sum(Range(s2.Cells(8, a(y)), s2.Cells(sat, a(y))))
Next
Sheets("Bordro").Range("B65536").End(xlUp).Offset(1, 0).Value = "TOPLAM" 'En Son Satıra TOPLAM yazmak
Sheets("Bordro").Range("C65536").End(xlUp).Offset(4, 0).Value = Sheets("Veri").[A9]
Sheets("Bordro").Range("B65536").End(xlUp).Offset(5, 0).Value = "Adı Soyadı :"
Sheets("Bordro").Range("C65536").End(xlUp).Offset(2, 0).Value = Sheets("Veri").[B9]
Sheets("Bordro").Range("B65536").End(xlUp).Offset(1, 0).Value = "Ünvanı :"
Sheets("Bordro").Range("C65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B10]
Sheets("Bordro").Range("B65536").End(xlUp).Offset(1, 0).Value = "İmza :"
Sheets("Bordro").Range("C65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B11]
Sheets("Bordro").Range("I65536").End(xlUp).Offset(3, 0).Value = Sheets("Veri").[A6]
Sheets("Bordro").Range("H65536").End(xlUp).Offset(5, 0).Value = "Adı Soyadı :"
Sheets("Bordro").Range("J65536").End(xlUp).Offset(5, 0).Value = Sheets("Veri").[B6]
Sheets("Bordro").Range("H65536").End(xlUp).Offset(1, 0).Value = "Ünvanı :"
Sheets("Bordro").Range("J65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B7]
Sheets("Bordro").Range("H65536").End(xlUp).Offset(1, 0).Value = "İmza :"
Sheets("Bordro").Range("J65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B8]
End Sub
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Merhaba.
Aşağıdaki şekilde denermisiniz?:cool:
Kod:
a = WorksheetFunction.CountA(Sheets("Bordro").Range("B5:B65536"))
If a Mod 1 = 0 Then
adr1 = "a" & a + 4 & ":N" & a + 4
adr2 = "a" & a + 5 & ":N" & a + 5
s2.Range(adr1).Borders(xlEdgeTop).Weight = xlThin
s2.Range(adr1).Borders(xlEdgeBottom).Weight = xlThin
s2.Range(adr1).Borders(xlEdgeLeft).Weight = xlThin
s2.Range(adr1).Borders(xlEdgeRight).Weight = xlThin
s2.Range(adr2).Borders(xlEdgeTop).Weight = xlThin
s2.Range(adr2).Borders(xlEdgeBottom).Weight = xlThin
s2.Range(adr2).Borders(xlEdgeLeft).Weight = xlThin
s2.Range(adr2).Borders(xlEdgeRight).Weight = xlThin
 
Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
Sezar ilgin için teşekkür ederim fakat iki satırı çiziyor. ben A stüunun son dolu satırının bir alt satırına kadar çizmesini istiyorum.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Küçük bir örnek dosya yollarsanız.Ne yapmak istediğinizde dosyada açıklarsanız.Soru dağa iyi anlaşılacaktır.:cool:
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,603
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

Aşağıdaki kodu denermisiniz. Sanırım kendi kodunuza uyarlayabilirsiniz.

Kod:
Sub ÇİZGİ_ÇİZ()
    Set S2 = Sheets("Bordro")
    SON_SATIR = S2.[A65536].End(3).Row + 1
    ADRES = Range("A5:N" & SON_SATIR).Address
    With S2.Range(ADRES)
    .Borders(xlEdgeLeft).Weight = xlThin
    .Borders(xlEdgeTop).Weight = xlThin
    .Borders(xlEdgeBottom).Weight = xlThin
    .Borders(xlEdgeRight).Weight = xlThin
    .Borders(xlInsideVertical).Weight = xlThin
    .Borders(xlInsideHorizontal).Weight = xlThin
    End With
End Sub
 
Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
Slm Üstadadlar yardımlarınız için çok teşekkür ederim fakat olmadı; dosyayı ekte gönderiyorum. Bordro Formundan > Bordro Oluştur Düğmesine yazılacak formül. Ekteki dosyayı bir inceleyerek yardımcı olursanız sevinirim.
Bir de işten çıkanlar için no kısmını boş bırakmasını formülle yapmışım makroyla yapabilirmiyiz o kısmada bir bakarsanız sevinirim. şimdiden kolay gelsin.
 
Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
Bordronunu çizilmiş halini elle çizmişim
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Bordronunu çizilmiş halini elle çizmişim
Aşağıdaki kodları denermisiniz.Galiba bu sefer oldu.:cool:
Kod:
Set s1 = Sheets("Parametre")
Set s2 = Sheets("Bordro")
s2.Select
Range("A2:O1000").Select 'Belirtilen hücre aralığını seç
Selection.ClearContents 'Belirtilen hücre aralığını sil
 Set s2 = Sheets("Bordro")
Sheets("Veri").Select 'Veri Sayfasını Seç
s2.[a1] = [b14].Text 'Veri Sayfasının B14 hücresini Bodro sayfasının A1 hücresine kayded
s2.[b2] = [a1].Text
s2.[c2] = [b1]
s2.[l3] = [b12]
s2.[n3] = [b13]
s2.[m2] = [a12]
s1.Select 'Parametre Sayfasını Seç
a = Array(1, 2, 4, 8, 9, 24, 11, 12, 13, 14, 15, 16, 17, 18)
sat = 3 'Üç satır boş bırak 4. satırdan başla
For x = 1 To [A65536].End(3).Row 'Paremetre sayfasının A sütunundan başla
    If Cells(x, 24) > 0 Then '24. sütun sıfırdan büyük ise ekle
        sat = sat + 1 'bir artarak say
        For y = 1 To 14 '14 sütun kopyala
            s2.Cells(sat, y) = s1.Cells(x, a(y - 1))
        Next
    End If
Next x
a = Array(7, 8, 9, 10, 11, 12, 13, 14)
For y = 0 To 7
    s2.Cells(sat + 1, a(y)) = WorksheetFunction.Sum(Range(s2.Cells(8, a(y)), s2.Cells(sat, a(y))))
Next
SON_SATIR = s2.Cells(65536, "B").End(xlUp).Row
If SON_SATIR < 5 Then GoTo atla
For x = 1 To 4
s2.Range("A5:N" & SON_SATIR).Borders(x).LineStyle = 1
Next x
atla:
Sheets("Bordro").Range("B65536").End(xlUp).Offset(1, 0).Value = "TOPLAM" 'En Son Satıra TOPLAM yazmak
Sheets("Bordro").Range("C65536").End(xlUp).Offset(4, 0).Value = Sheets("Veri").[A9]
Sheets("Bordro").Range("B65536").End(xlUp).Offset(5, 0).Value = "Adı Soyadı    :"
Sheets("Bordro").Range("C65536").End(xlUp).Offset(2, 0).Value = Sheets("Veri").[B9]
Sheets("Bordro").Range("B65536").End(xlUp).Offset(1, 0).Value = "Ünvanı        :"
Sheets("Bordro").Range("C65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B10]
Sheets("Bordro").Range("B65536").End(xlUp).Offset(1, 0).Value = "İmza          :"
Sheets("Bordro").Range("C65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B11]
Sheets("Bordro").Range("I65536").End(xlUp).Offset(3, 0).Value = Sheets("Veri").[A6]
Sheets("Bordro").Range("H65536").End(xlUp).Offset(5, 0).Value = "Adı Soyadı    :"
Sheets("Bordro").Range("J65536").End(xlUp).Offset(5, 0).Value = Sheets("Veri").[B6]
Sheets("Bordro").Range("H65536").End(xlUp).Offset(1, 0).Value = "Ünvanı        :"
Sheets("Bordro").Range("J65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B7]
Sheets("Bordro").Range("H65536").End(xlUp).Offset(1, 0).Value = "İmza          :"
Sheets("Bordro").Range("J65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B8]
 
Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
Saol &#220;stad ellerine sa&#287;l&#305;k tam istedi&#287;im gibi olmu&#351; fakat, bordro hesaplarken &#231;izgileri silip tekrar &#231;izmesini nas&#305;l sa&#287;layabiliriz. personel azald&#305;&#287;&#305; zaman sorun &#231;&#305;k&#305;yor. &#231;izgiler kal&#305;yor.
Selection.ClearContents komutu yerine Selection.Delete yi kulland&#305;m fakat bundada hacre bi&#231;imi se&#231;mem gereken yerler var sorun &#231;&#305;kar&#305;yor.
Yani h&#252;cre &#231;izgilerini silip tekrar &#231;izdirebilirmiyiz.
 
Katılım
6 Eylül 2006
Mesajlar
165
Excel Vers. ve Dili
Excel 2010 - türkçe
Sn. Talatcd dosyan&#305;zda belirtmi&#351; oldugunuz isimler tc numaralar&#305;n&#305; ve banka hesaplar&#305;n&#305; birebir do&#287;ru vermi&#351;siniz b&#246;yle bilgileri payla&#351;man&#305;z ne kadar do&#287;ru !!!
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,603
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Selamlar,

A&#351;a&#287;&#305;daki kodu denermisiniz.

Kod:
Private Sub CommandButton1_Click() ' Belirli S&#252;tunlar&#305;n Aktar&#305;lmas&#305; ve Toplam Al&#305;nmas&#305;
    Set S1 = Sheets("Parametre")
    Set S2 = Sheets("Bordro")
    S2.Select
    S2.[A2:N65536].ClearContents 'Belirtilen h&#252;cre aral&#305;&#287;&#305;n&#305; sil
    Sheets("Veri").Select 'Veri Sayfas&#305;n&#305; Se&#231;
    S2.[a1] = [b14].Text 'Veri Sayfas&#305;n&#305;n B14 h&#252;cresini Bodro sayfas&#305;n&#305;n A1 h&#252;cresine kayded
    S2.[b2] = [a1].Text
    S2.[c2] = [b1]
    S2.[l3] = [b12]
    S2.[n3] = [b13]
    S2.[m2] = [a12]
    S1.Select 'Parametre Sayfas&#305;n&#305; Se&#231;
    a = Array(1, 2, 4, 8, 9, 24, 11, 12, 13, 14, 15, 16, 17, 18)
    sat = 3 '&#220;&#231; sat&#305;r bo&#351; b&#305;rak 4. sat&#305;rdan ba&#351;la
    For x = 1 To [A65536].End(3).Row 'Paremetre sayfas&#305;n&#305;n A s&#252;tunundan ba&#351;la
        If Cells(x, 24) > 0 Then '24. s&#252;tun s&#305;f&#305;rdan b&#252;y&#252;k ise ekle
            sat = sat + 1 'bir artarak say
            For y = 1 To 14 '14 s&#252;tun kopyala
                S2.Cells(sat, y) = S1.Cells(x, a(y - 1))
            Next
        End If
    Next x
    a = Array(7, 8, 9, 10, 11, 12, 13, 14)
    For y = 0 To 7
        S2.Cells(sat + 1, a(y)) = WorksheetFunction.Sum(Range(S2.Cells(8, a(y)), S2.Cells(sat, a(y))))
    Next
    
    With S2.[A4:N65536]
    .Borders(xlDiagonalDown).LineStyle = xlNone
    .Borders(xlDiagonalUp).LineStyle = xlNone
    .Borders(xlEdgeLeft).LineStyle = xlNone
    .Borders(xlEdgeTop).LineStyle = xlNone
    .Borders(xlEdgeBottom).LineStyle = xlNone
    .Borders(xlEdgeRight).LineStyle = xlNone
    .Borders(xlInsideVertical).LineStyle = xlNone
    .Borders(xlInsideHorizontal).LineStyle = xlNone
    End With
    SON_SATIR = S2.[A65536].End(3).Row + 1
    ADRES = Range("A4:N" & SON_SATIR).Address
    With S2.Range(ADRES)
    .Borders(xlEdgeLeft).Weight = xlThin
    .Borders(xlEdgeTop).Weight = xlThin
    .Borders(xlEdgeBottom).Weight = xlThin
    .Borders(xlEdgeRight).Weight = xlThin
    .Borders(xlInsideVertical).Weight = xlThin
    .Borders(xlInsideHorizontal).Weight = xlThin
    End With
    
    S2.Range("B65536").End(xlUp).Offset(1, 0).Value = "TOPLAM" 'En Son Sat&#305;ra TOPLAM yazmak
    S2.Range("C65536").End(xlUp).Offset(4, 0).Value = Sheets("Veri").[A9]
    S2.Range("B65536").End(xlUp).Offset(5, 0).Value = "Ad&#305; Soyad&#305;    :"
    S2.Range("C65536").End(xlUp).Offset(2, 0).Value = Sheets("Veri").[B9]
    S2.Range("B65536").End(xlUp).Offset(1, 0).Value = "&#220;nvan&#305;        :"
    S2.Range("C65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B10]
    S2.Range("B65536").End(xlUp).Offset(1, 0).Value = "&#304;mza          :"
    S2.Range("C65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B11]
    S2.Range("I65536").End(xlUp).Offset(3, 0).Value = Sheets("Veri").[A6]
    S2.Range("H65536").End(xlUp).Offset(5, 0).Value = "Ad&#305; Soyad&#305;    :"
    S2.Range("J65536").End(xlUp).Offset(5, 0).Value = Sheets("Veri").[B6]
    S2.Range("H65536").End(xlUp).Offset(1, 0).Value = "&#220;nvan&#305;        :"
    S2.Range("J65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B7]
    S2.Range("H65536").End(xlUp).Offset(1, 0).Value = "&#304;mza          :"
    S2.Range("J65536").End(xlUp).Offset(1, 0).Value = Sheets("Veri").[B8]
End Sub
 
Katılım
22 Temmuz 2005
Mesajlar
228
Excel Vers. ve Dili
Excel-2003 Türkçe
Altın Üyelik Bitiş Tarihi
03.03.2021
&#252;stadlar&#305;m ellerinize sa&#287;l&#305;k tam istedi&#287;im gibi olmu&#351;. allah yar ve yard&#305;mc&#305;n&#305;z olsun.
 
Üst