DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
Gönderdiğim dosyada "W" sütununda bulunan verilere göre süzülüp aynı adı taşıyan sayfalara aktarılmasını istiyorum...Benim kodda bir sorun var..hatayı çıkaramadım...
Userformda Süz Aktar butonu var oraya tıkladığımda yapacak...
Butona tıkladığımda "w" sütununda bulunan tüm veriler, aynı adı taşıyan sayfalara aktarılacak...
Private Sub CommandButton9_Click()
Dim ts, kaplan, trabzonspor, bordo
trabzonspor = MsgBox("Aktarıma Başlıyorum", vbYesNo, "Onay")
If trabzonspor = vbNo Then Exit Sub
Application.ScreenUpdating = False
For kaplan = 2 To Sheets.Count
Sheets(kaplan).Range("B2:Z65536").ClearContents
bordo = 2
For ts = 2 To Sheets("2011 SİPARİŞLER").Cells(65536, "B").End(xlUp).Row
If Sheets("2011 SİPARİŞLER").Cells(ts, "W") = Sheets(kaplan).Name Then
Sheets(kaplan).Cells(bordo, "C") = Sheets("2011 SİPARİŞLER").Cells(ts, "C")
Sheets(kaplan).Cells(bordo, "D") = Sheets("2011 SİPARİŞLER").Cells(ts, "D")
Sheets(kaplan).Cells(bordo, "E") = Sheets("2011 SİPARİŞLER").Cells(ts, "E")
Sheets(kaplan).Cells(bordo, "F") = Sheets("2011 SİPARİŞLER").Cells(ts, "F")
Sheets(kaplan).Cells(bordo, "G") = Sheets("2011 SİPARİŞLER").Cells(ts, "G")
Sheets(kaplan).Cells(bordo, "H") = Sheets("2011 SİPARİŞLER").Cells(ts, "H")
Sheets(kaplan).Cells(bordo, "I") = Sheets("2011 SİPARİŞLER").Cells(ts, "I")
Sheets(kaplan).Cells(bordo, "J") = Sheets("2011 SİPARİŞLER").Cells(ts, "J")
Sheets(kaplan).Cells(bordo, "K") = Sheets("2011 SİPARİŞLER").Cells(ts, "K")
Sheets(kaplan).Cells(bordo, "L") = Sheets("2011 SİPARİŞLER").Cells(ts, "L")
Sheets(kaplan).Cells(bordo, "M") = Sheets("2011 SİPARİŞLER").Cells(ts, "M")
Sheets(kaplan).Cells(bordo, "N") = Sheets("2011 SİPARİŞLER").Cells(ts, "N")
Sheets(kaplan).Cells(bordo, "O") = Sheets("2011 SİPARİŞLER").Cells(ts, "O")
Sheets(kaplan).Cells(bordo, "P") = Sheets("2011 SİPARİŞLER").Cells(ts, "P")
Sheets(kaplan).Cells(bordo, "Q") = Sheets("2011 SİPARİŞLER").Cells(ts, "Q")
Sheets(kaplan).Cells(bordo, "R") = Sheets("2011 SİPARİŞLER").Cells(ts, "R")
Sheets(kaplan).Cells(bordo, "S") = Sheets("2011 SİPARİŞLER").Cells(ts, "S")
Sheets(kaplan).Cells(bordo, "T") = Sheets("2011 SİPARİŞLER").Cells(ts, "T")
Sheets(kaplan).Cells(bordo, "U") = Sheets("2011 SİPARİŞLER").Cells(ts, "U")
Sheets(kaplan).Cells(bordo, "V") = Sheets("2011 SİPARİŞLER").Cells(ts, "V")
Sheets(kaplan).Cells(bordo, "W") = Sheets("2011 SİPARİŞLER").Cells(ts, "W")
Sheets(kaplan).Cells(bordo, "X") = Sheets("2011 SİPARİŞLER").Cells(ts, "X")
Sheets(kaplan).Cells(bordo, "Y") = Sheets("2011 SİPARİŞLER").Cells(ts, "Y")
Sheets(kaplan).Cells(bordo, "Z") = Sheets("2011 SİPARİŞLER").Cells(ts, "Z")
bordo = bordo + 1
Sheets(kaplan).Range("B2") = 1
Sheets(kaplan).Range("B2:B" & bordo - 1).DataSeries Rowcol:=xlColumns, Type:=xlLinear, _
Date:=xlDay, Step:=1, Trend:=False
End If
Next
Next
Application.ScreenUpdating = True
MsgBox "Aktarım Tamamlandı", vbInformation, "Bitiş"
End Sub
Hocam çok teşekkürler....bir sorum daha olsa çok mu oluyorum acaba... bu işlemi "Z" sütunundaki sadece " * " olanlara uygulama imkanımız var mı?
Private Sub CommandButton9_Click()
Dim ts, kaplan, trabzonspor, bordo
trabzonspor = MsgBox("Aktarıma Başlıyorum", vbYesNo, "Onay")
If trabzonspor = vbNo Then Exit Sub
Application.ScreenUpdating = False
For kaplan = 2 To Sheets.Count
Sheets(kaplan).Range("B2:Z65536").ClearContents
bordo = 2
For ts = 2 To Sheets("2011 SİPARİŞLER").Cells(65536, "B").End(xlUp).Row
If Sheets("2011 SİPARİŞLER").Cells(ts, "W") = Sheets(kaplan).Name And _
Sheets("2011 SİPARİŞLER").Cells(ts, "Z") = "*" Then
Sheets(kaplan).Cells(bordo, "C") = Sheets("2011 SİPARİŞLER").Cells(ts, "C")
Sheets(kaplan).Cells(bordo, "D") = Sheets("2011 SİPARİŞLER").Cells(ts, "D")
Sheets(kaplan).Cells(bordo, "E") = Sheets("2011 SİPARİŞLER").Cells(ts, "E")
Sheets(kaplan).Cells(bordo, "F") = Sheets("2011 SİPARİŞLER").Cells(ts, "F")
Sheets(kaplan).Cells(bordo, "G") = Sheets("2011 SİPARİŞLER").Cells(ts, "G")
Sheets(kaplan).Cells(bordo, "H") = Sheets("2011 SİPARİŞLER").Cells(ts, "H")
Sheets(kaplan).Cells(bordo, "I") = Sheets("2011 SİPARİŞLER").Cells(ts, "I")
Sheets(kaplan).Cells(bordo, "J") = Sheets("2011 SİPARİŞLER").Cells(ts, "J")
Sheets(kaplan).Cells(bordo, "K") = Sheets("2011 SİPARİŞLER").Cells(ts, "K")
Sheets(kaplan).Cells(bordo, "L") = Sheets("2011 SİPARİŞLER").Cells(ts, "L")
Sheets(kaplan).Cells(bordo, "M") = Sheets("2011 SİPARİŞLER").Cells(ts, "M")
Sheets(kaplan).Cells(bordo, "N") = Sheets("2011 SİPARİŞLER").Cells(ts, "N")
Sheets(kaplan).Cells(bordo, "O") = Sheets("2011 SİPARİŞLER").Cells(ts, "O")
Sheets(kaplan).Cells(bordo, "P") = Sheets("2011 SİPARİŞLER").Cells(ts, "P")
Sheets(kaplan).Cells(bordo, "Q") = Sheets("2011 SİPARİŞLER").Cells(ts, "Q")
Sheets(kaplan).Cells(bordo, "R") = Sheets("2011 SİPARİŞLER").Cells(ts, "R")
Sheets(kaplan).Cells(bordo, "S") = Sheets("2011 SİPARİŞLER").Cells(ts, "S")
Sheets(kaplan).Cells(bordo, "T") = Sheets("2011 SİPARİŞLER").Cells(ts, "T")
Sheets(kaplan).Cells(bordo, "U") = Sheets("2011 SİPARİŞLER").Cells(ts, "U")
Sheets(kaplan).Cells(bordo, "V") = Sheets("2011 SİPARİŞLER").Cells(ts, "V")
Sheets(kaplan).Cells(bordo, "W") = Sheets("2011 SİPARİŞLER").Cells(ts, "W")
Sheets(kaplan).Cells(bordo, "X") = Sheets("2011 SİPARİŞLER").Cells(ts, "X")
Sheets(kaplan).Cells(bordo, "Y") = Sheets("2011 SİPARİŞLER").Cells(ts, "Y")
Sheets(kaplan).Cells(bordo, "Z") = Sheets("2011 SİPARİŞLER").Cells(ts, "Z")
bordo = bordo + 1
Sheets(kaplan).Range("B2") = 1
Sheets(kaplan).Range("B2:B" & bordo - 1).DataSeries Rowcol:=xlColumns, Type:=xlLinear, _
Date:=xlDay, Step:=1, Trend:=False
End If
Next
Next
Application.ScreenUpdating = True
MsgBox "Aktarım Tamamlandı", vbInformation, "Bitiş"
End Sub
Ellerinize sağlık... çok teşekkürler... tekrar görüşmek üzere kolay gelsin...
Hocam bir düzeltme yaptım..Userforma hem tüm siparişleri hem de sadece * olanları aktarma butonu ekledim..gayet güzel çalışıyor. Fakat aktarılanları silme butonu hata verdi... bir göz atar mısınız?
Yeni dosya ektedir...
Private Sub CommandButton10_Click()
Dim ts, kaplan
kaplan = MsgBox("Verileri Temizliyorum", vbYesNo, "Onay")
If kaplan = vbNo Then Exit Sub
Application.ScreenUpdating = False
For ts = 2 To Sheets.Count
Sheets(ts).Range("B2:Z65536").ClearContents
Next
Application.ScreenUpdating = True
MsgBox "Temizlik Tamamlandı", vbInformation, "Bitiş"
End Sub
Gördü bile ... çok teşekkürler..