Satır ekleme kodu hk.

Katılım
17 Kasım 2005
Mesajlar
48
Aynı tip mamul kodu bitiminde 7 satır ekleyecek koda ihtiyacım var.
Örnek dosya ekdedir.
iyi günler,
 

Korhan Ayhan

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

Aşağıdaki şekilde denermisiniz.

Kod:
Sub YEDİ_SATIR_EKLE()
    For X = [A65536].End(3).Row To 3 Step -1
    If Cells(X, 1) <> Cells(X - 1, 1) Then Rows(X & ":" & X + 7).Insert shift:=xlDown
    Next
End Sub
 
Katılım
17 Kasım 2005
Mesajlar
48
Teşekkürler,
Açılan satırların birincisine I ve J kolonuna toplam aldırabilirmiyiz.
Ayrıca ikinci, üçüncü ve dördüncü satırlarada A ve B kolonuna ilgili ürünün mamul kodu ve mamul ismi yazdırılabilirmi.

İyi Günler,
 

Korhan Ayhan

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

Mam&#252;lleriniz hep 7 sat&#305;rl&#305;k verilerden mi olu&#351;uyor ?
 

Korhan Ayhan

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

Ekteki örnek dosyayı incelermisiniz.
 
Katılım
17 Kasım 2005
Mesajlar
48
Merhaba,

buna ek olarak her mamul başına birinci satırdaki başlığı taşıyabilirmiyiz.

Teşekkürler,
 

Korhan Ayhan

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

Örnek dosyadaki kodu aşağıdaki ile değiştirip denermisiniz.

Kod:
Sub YEDİ_SATIR_EKLE_TOPLAM_AL()
    BAŞLIK = [A1:J1]
    For X = [A65536].End(3).Row To 3 Step -1
    If Cells(X, 1) <> Cells(X - 1, 1) Then
    Rows(X & ":" & X + 7).Insert shift:=xlDown
    Range(Cells(X + 7, "A"), Cells(X + 7, "J")) = BAŞLIK
    End If
    Next
    For Each ALAN In Columns("I").SpecialCells(xlConstants, xlNumbers).Areas
    ADRES1 = ALAN.Address(False, False)
    ADRES2 = ALAN.Offset(0, 1).Address(False, False)
    ALAN.Offset(ALAN.Count + 1, -8).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -8).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 2, -8).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -8).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 3, -8).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -8).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 1, -7).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -7).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 2, -7).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -7).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 3, -7).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -7).Resize(1, 1)
    ALAN.Offset(ALAN.Count, -1).Resize(1, 1).Formula = "TOPLAM"
    ALAN.Offset(ALAN.Count, 0).Resize(1, 1).Formula = "=SUM(" & ADRES1 & ")"
    ALAN.Offset(ALAN.Count, 1).Resize(1, 1).Formula = "=SUM(" & ADRES2 & ")"
    Next
End Sub
 

mrt

Katılım
11 Mayıs 2005
Mesajlar
167
Excel Vers. ve Dili
office 2003 tr & eng.
office 2007 tr & eng.
b sütünundaki hücreler dolu ise hücre ekle

Sub saga_kaydir()
Application.ScreenUpdating = False
Dim i As Integer
t = ActiveSheet.UsedRange.Rows.Count
For i = t To 1 Step -1
If Left(Cells(i, 2), 1) <> "" Then
Rows(i).Insert Shift:=xlToRight
End If
Next i
Application.ScreenUpdating = True
End Sub

kodunda birşeyleri yanlış yapıyorum.

satır ekliyor. alta kaydırıyor.

ben b kolunu dolu ise 1 hücre eklesin ve sağa kaydırsın istiyoeum.
 

Korhan Ayhan

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

Kodunuzu a&#351;a&#287;&#305;daki &#351;ekilde de&#287;i&#351;tirip denermisiniz.

Kod:
Sub SA&#286;A_KAYDIR()
    Application.ScreenUpdating = False
    Dim X As Integer
    ALAN = ActiveSheet.UsedRange.Rows.Count
    For X = ALAN To 1 Step -1
    If Cells(X, 2) <> "" Then
    Cells(X, 2).Insert Shift:=xlToRight
    End If
    Next
    Application.ScreenUpdating = True
End Sub
 
Son düzenleme:
Katılım
21 Ocak 2007
Mesajlar
25
Excel Vers. ve Dili
Office 2007 Tr
Satır ekleme ve Yapıştırma

Merhaba Arkadaşlar;
Foruma yeni üye oldum. Aramalarım sonucunda benim için zor olanları kolaylaştıran çözümlere sizlerin sayesinde ulaştım. Emeği geçen herkese teşekkürler...
----
Sub YirmiAltı_SATIR_EKLE()
For X = [A65536].End(3).Row To 3 Step -1
If Cells(X, 1) <> Cells(X - 1, 1) Then Rows(X & ":" & X + 26).Insert shift:=xlDown
Next
End Sub
-----
yukarıdaki kodu makro haline getirmekle birlikte yaptıramadığım birkaç sorunum var: eklenen satırlardan önce bulunan A sütunundaki ismin yeni eklenen satırlarında da A sütununda da yer alması ve toplamda aynı isimden 27 tane olması.
AAAA
AAAA
AAAA
...
..
BBBB
BBBB
gibi....

Diğer sorunum da; yeni eklenen satırlarda yer alan B den AA sütunlarına kadar kopyalayaladığım aynı formülleri yapıştırmak..

İlginiz için çok teşekkür ederim....
 
Son düzenleme:

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki şekilde deneyin.

Kod:
Sub YirmiAltı_SATIR_EKLE()
For x = [A65536].End(3).Row To 3 Step -1
If Cells(x, 1) <> Cells(x - 1, 1) Then
Rows(x & ":" & x + 26).Insert shift:=xlDown
Range("a" & x & ":a" & x + 26) = Cells(x - 1, 1)
Range("b" & x & ":aa" & x + 26) = Range("b" & x - 1 & ":aa" & x - 1).Formula
End If
Next
End Sub
 
Katılım
21 Ocak 2007
Mesajlar
25
Excel Vers. ve Dili
Office 2007 Tr
&#199;ok te&#351;ekk&#252;r ederim Say&#305;n leventm;

Dedi&#287;iniz &#351;ekilde yapmaya &#231;al&#305;&#351;t&#305;m. Eklenen sat&#305;r say&#305;s&#305; 27 oldu ama ordaki 26 say&#305;lar&#305;n&#305; 25 yaparak, de&#287;i&#351;tirerek toplamda 27 sat&#305;r olmas&#305; i&#231;in gerekli 26 eklemeyi ve isimleri ekletmeyi ger&#231;ekle&#351;tirebildim.

Ancak, sadece A s&#252;tunundaki isimlerin tekrar&#305;n&#305; yapt&#305;r&#305;rken B2:Z28 aras&#305;nda bulunan ve her sat&#305;rda farkl&#305; olan (h&#252;crelerde de&#287;il) form&#252;lleri sizin form&#252;l&#252;n&#252;zle eklemi&#351; oldu&#287;umuz yeni sat&#305;rlara yap&#305;&#351;t&#305;rmak istiyorum.

Daha otomasyon &#351;ekliyle yapacak olursak;
1. Belirleyece&#287;imiz say&#305;da(&#246;rn.3) sat&#305;r ekletmek, 2. ilk s&#252;t&#252;ndaki de&#287;erlerin eklenecak say&#305;da tekrar&#305;n&#305;n sa&#287;lanmas&#305;, 3. belirlenen h&#252;cre aral&#305;&#287;&#305;ndaki (tek bir sat&#305;r i&#231;in: B2 ile Z2; 3 sat&#305;r i&#231;in de B2 ile Z4 aras&#305;nda sat&#305;rlardaki form&#252;l) form&#252;l&#252;n belirledi&#287;imiz say&#305;da(&#246;rn 3)eklenen sat&#305;r&#305;n B s&#252;tunundan Z s&#252;tunana ayn&#305; form&#252;lleri yap&#305;&#351;t&#305;rmak. Son k&#305;s&#305;mdaki &#305;zd&#305;rab&#305;m&#305;:( tam olarak anlatabildimmi bilemiyorum ama;

...A......................................B..................................................................................C
2 Ahmet .....form&#252;l(&#246;rne&#287;in):=D&#220;&#350;EYARA($A2;tablo$A$3:$HW$280;b$1;YANLI&#350;)....=D&#220;&#350;EYARA($A2;tablo$A$3:$HW$280;c$1;YANLI&#350;)
3 Ahmet......form&#252;l(&#246;rne&#287;in) =D&#220;&#350;EYARA($A3;tablo$A$400:$HW$680;b$1;YANLI&#350;)...=D&#220;&#350;EYARA($A3;tablo$A$400:$HW$680;c$1;YANLI&#350;)
4 Ahmet........
..
27 Ahmet
28 Hasan
29 Hasan
30 Hasan
..

Bu durumda Hasan isminin ge&#231;mi&#351; oldu&#287;u ilk sat&#305;rda(ki bu 27.sat&#305;r &#246;rnekte) 2. sat&#305;rdaki B h&#252;cresinden Z h&#252;cresine kadar uygulanan form&#252;l&#252;
Hasan isminin 2.tekrarlamas&#305;nda 3 sat&#305;rda bulunan B-Z aras&#305;ndaki form&#252;l...vs vs..
Hasan isminin 3.tekrarlamas&#305;nda 4 sat&#305;rda bulunan B-Z aras&#305;ndaki form&#252;l

Umar&#305;m sizleriniz vaktinizi almadan anlatabilmi&#351;imdir.

G&#246;stermi&#351; oldu&#287;unuz &#246;zveriniz ve ilginiz i&#231;in &#351;imdiden &#231;ok te&#351;ekk&#252;r ederim.
 
Son düzenleme:

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Dosyanızı eklerseniz daha hızlı çözüm bulunabileceğini düşünüyorum.
 
Katılım
21 Ocak 2007
Mesajlar
25
Excel Vers. ve Dili
Office 2007 Tr
Yazarak anlatmak yerine sorunumu dosyayla gönderiyorum, umarım çözüm bulabiliriz. Teşekkürler...
 
Katılım
17 Kasım 2005
Mesajlar
48
Sn. COST CONTROL

Geçen sene yazmış olduğunuz koda ilave olarak G ve H kolonlarındaki 9 ve 14.
satırları ve açıklamaları ekleyebilirmiyiz. örnek format ekli dosyadadır.
teşekkürler,
 

Korhan Ayhan

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

Biraz geç oldu ama ekteki örnek dosyayı incelermisiniz. Umarım faydası olur.

Uygulanan kod;

Kod:
Sub YEDİ_SATIR_EKLE_TOPLAM_AL()
    BAŞLIK = [A1:J1]
    For X = [A65536].End(3).Row To 3 Step -1
    If Cells(X, 1) <> Cells(X - 1, 1) Then
    Rows(X & ":" & X + 7).Insert shift:=xlDown
    Range(Cells(X + 7, "A"), Cells(X + 7, "J")) = BAŞLIK
    End If
    Next
    For Each ALAN In Columns("I").SpecialCells(xlConstants, xlNumbers).Areas
    ADRES1 = ALAN.Offset(0, 1).Address(False, False)
    ADRES2 = Replace(Mid(ALAN.Offset(7, 1).Address(False, False), 1, 3), ":", "")
    ADRES3 = ALAN.Offset(8, 1).Resize(3, 1).Address(False, False)
    ADRES4 = Replace(Mid(ALAN.Offset(11, 1).Address(False, False), 1, 3), ":", "")
    ALAN.Offset(ALAN.Count + 1, -8).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -8).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 2, -8).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -8).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 3, -8).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -8).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 1, -7).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -7).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 2, -7).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -7).Resize(1, 1)
    ALAN.Offset(ALAN.Count + 3, -7).Resize(1, 1).Formula = ALAN.Offset(ALAN.Count - 2, -7).Resize(1, 1)
    ALAN.Offset(ALAN.Count, -2).Resize(1, 1).Formula = 1
    ALAN.Offset(ALAN.Count, -1).Resize(1, 1).Formula = "Hammadde Mlz. Toplamı"
    ALAN.Offset(ALAN.Count, 1).Resize(1, 1).Formula = "=SUM(" & ADRES1 & ")"
    ALAN.Offset(ALAN.Count + 1, -2).Resize(1, 1).Formula = 2
    ALAN.Offset(ALAN.Count + 1, -1).Resize(1, 1).Formula = "Direkt İşçilik"
    ALAN.Offset(ALAN.Count + 2, -2).Resize(1, 1).Formula = 3
    ALAN.Offset(ALAN.Count + 2, -1).Resize(1, 1).Formula = "Gim"
    ALAN.Offset(ALAN.Count + 3, -2).Resize(1, 1).Formula = 4
    ALAN.Offset(ALAN.Count + 3, -1).Resize(1, 1).Formula = "Amortisman"
    ALAN.Offset(ALAN.Count + 4, -2).Resize(1, 1).Formula = 5
    ALAN.Offset(ALAN.Count + 4, -1).Resize(1, 1).Formula = "Masraf Toplamı"
    ALAN.Offset(ALAN.Count + 4, 1).Resize(1, 1).Formula = "=SUM(" & ADRES3 & ")"
    ALAN.Offset(ALAN.Count + 5, -2).Resize(1, 1).Formula = 6
    ALAN.Offset(ALAN.Count + 5, -1).Resize(1, 1).Formula = "Üretim Maliyeti"
    ALAN.Offset(ALAN.Count + 5, 1).Resize(1, 1).Formula = "=SUM(" & ADRES2 & "," & ADRES4 & ")"
    Next
    MsgBox "İŞLEMİNİZ TAMAMLANMIŞTIR.", vbInformation
End Sub
 
Katılım
17 Kasım 2005
Mesajlar
48
Merhaba COST_CONTROL

Son güncellenmiş koda ilave olarak ekli dosyada veri1_12 sayfasında bulunan
direkt işçilik, gim ve amortisman bilgilerini rapor sayfasına aktarbilirmiyiz.(mavi renkli saatırlara)

Teşekkürler,
 
Üst