Soru alt alta aktarım sorunu

NADİR YILDIZ

Altın Üye
Katılım
7 Ocak 2006
Mesajlar
1,264
Excel Vers. ve Dili
2016 Türkçe
Arkadaşlar sizlerin desteği ile
Z listesi sayfasındaki yatay bilgileri Muhasebe sayfasına alt alta sıralayabiliyordum.
ancak Z listesi sayfasına sütun ilavesi yapınca sıralamada sorun çıkmaya başladı
makro kodunda nasıl bir revize yapılması gerekiyor

iyi çalışmalar
 

Ekli dosyalar

asi_kral

Özel Üye
Katılım
22 Şubat 2012
Mesajlar
2,822
Excel Vers. ve Dili
Excel 2007 Türkçe
Merhaba
Kod:
For ii = 8 To 17 Step 3
Bu kodun yerine
Kod:
For ii = 8 To s2.Cells(i, Columns.Count).End(xlToLeft).Column Step 3
Bu kodu yazarak dener misiniz
 

NADİR YILDIZ

Altın Üye
Katılım
7 Ocak 2006
Mesajlar
1,264
Excel Vers. ve Dili
2016 Türkçe
sayın asi kral öneriniz için teşekkür ediyorum.
sizin kodu uyguladığımda istediğim çözüme maalesef ulaşamadım.
yinede günler sonrada olsa sizden cevap gelmesi sevindirici :)
bendeki kodların sütun sayılarında değişiklik yaptığımda istediğim sonuca ulaştım

Set s1 = Worksheets("MUHASEBE")
Set s2 = Worksheets("Z LİSTESİ")
s1.Range("A3:L" & Rows.Count).ClearContents
sat = 3
For i = 4 To s2.Cells(Rows.Count, 1).End(3).Row
w = s2.Range(s2.Cells(i, 1), s2.Cells(i, 45)).Value
w(1, 11) = w(1, 7)
w(1, 12) = Trim(s2.Cells(i, 53))
For ii = 8 To 53 Step 3
If s2.Cells(i, ii).Value > 0 Then
w(1, 8) = s2.Cells(i, ii).Value
w(1, 9) = s2.Cells(i, ii + 1).Value
w(1, 10) = s2.Cells(i, ii + 2).Value
s1.Cells(sat, 5).NumberFormat = "@"
s1.Cells(sat, 12).NumberFormat = "@"
s1.Cells(sat, 1).Resize(, 12).Value = w
sat = sat + 1
End If
Next ii
Next i
MsgBox "İşlem Tamam"
 

asi_kral

Özel Üye
Katılım
22 Şubat 2012
Mesajlar
2,822
Excel Vers. ve Dili
Excel 2007 Türkçe
Merhaba
ben sütündaki doluluk oranına göre hareket ettirmiştim. ( Dinamik şekilde çalışıyordu )
Siz rakamları elle yazdığınız takdirde hep manuel yapmak zorunda kalacaksınız.
Şöyle yapmanız daha mantıklı olur kanaatindeyim.
Benim kodu bir değişkene atayın sonra sizin yazdığığınız manuel rakam yerine bu değişkeni yazın bence daha iyi olacaktır.
Kod:
STN=s2.Cells(i, Columns.Count).End(xlToLeft).Column
şeklinde olabilir.
 
Üst