• DİKKAT

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

Butona tıkladığımda isteklere göre aktarma...

  • Konbuyu başlatan Konbuyu başlatan manly
  • Başlangıç tarihi Başlangıç tarihi
Katılım
25 Nisan 2005
Mesajlar
690
Excel Vers. ve Dili
Excel 2003 Türkçe
Ekte gönderdiğim dosyayı çalıştırdığımızda ekrana gelen menüde TÜM TOPLAMLAR butonuna tıkladığımda şunu yapmasını istiyorum...

1. " C " sütunundaki stok numaralarına göre sıralama yapılacak..

2. Sıralama yapıldıktan sonra " W " sütununda bulunan sipariş durumlarına göre kendi aralarında " G " sütunundaki miktarları toplatarak TÜMSONUÇ sayfasına aktarılmasını istiyorum...
 

Ekli dosyalar

Son düzenleme:
Merhaba
Açıklamalarınız yetersiz kalmış.
C sütunundaki verilerde mükerrer var ise bunlar tek'e mi düşürülecek_?
Hesaplama buna göre mi yapılacak_?
 
İhsan hocam yardımlarınızı bekliyorum....
 
Son düzenleme:
Evet teke düşürülerek toplamları alınacak....ve sonra aktarılacak...

Merhaba
Module kopyalayın ve deneyin
Kod:
Option Explicit
Sub tek_say_61()
Dim ts, kaplan, trabzonspor, bordo
trabzonspor = MsgBox("Sayıma Başlıyorum", vbYesNo, "Onay")
If trabzonspor = vbNo Then Exit Sub
Application.ScreenUpdating = False
Sheets("TÜMSONUÇ").Range("A2:J65536").ClearContents
kaplan = 2: bordo = 0
For ts = 2 To Sheets("2011 SİPARİŞLER").Cells(65536, "C").End(xlUp).Row
If WorksheetFunction.CountIf(Sheets("2011 SİPARİŞLER").Range("C2:C" & ts), _
Sheets("2011 SİPARİŞLER").Cells(ts, "C")) = 1 Then
Sheets("TÜMSONUÇ").Cells(kaplan, "A") = Sheets("2011 SİPARİŞLER").Cells(ts, "C")
Sheets("TÜMSONUÇ").Cells(kaplan, "B") = Sheets("2011 SİPARİŞLER").Cells(ts, "D")
kaplan = kaplan + 1
End If
Next
For ts = 2 To Sheets("TÜMSONUÇ").Cells(65536, "A").End(xlUp).Row
For kaplan = 3 To 9
bordo = 0
For trabzonspor = 2 To Sheets("2011 SİPARİŞLER").Cells(65536, "C").End(xlUp).Row
If Sheets("2011 SİPARİŞLER").Cells(trabzonspor, "C") = Sheets("TÜMSONUÇ"). _
Cells(ts, "A") And Sheets("2011 SİPARİŞLER").Cells(trabzonspor, "W") = _
Sheets("TÜMSONUÇ").Cells(1, kaplan) Then
bordo = bordo + 1
Sheets("TÜMSONUÇ").Cells(ts, kaplan) = bordo
End If
Next
Next
Next
For ts = 2 To Sheets("TÜMSONUÇ").Cells(65536, "A").End(xlUp).Row
Sheets("TÜMSONUÇ").Cells(ts, "J") = WorksheetFunction.Sum( _
Sheets("TÜMSONUÇ").Range("C" & ts & ":I" & ts))
Next
Application.ScreenUpdating = True
MsgBox "Sayım Bitti", vbInformation, "Bitiş"
End Sub
 
İhsan Hocam sanırım bir yanlış anlaşılma oldu...

" C " sütunundaki stok numaralarına göre sıralama yapıldıktan sonra,

" W " sütununda bulunan sipariş durumlarına göre "C" sütunundaki stok numaraların " G " sütunundaki miktarları toplatarak TÜMSONUÇ sayfasına aktarılmasını istiyorum...
 
Esasında sıralamaya bile gerek yok "C" sütununda bulunan mükerrer stok numaraları "Z sütununda bulunan sipariş durumlarına göre ayrılıp "G" sütunundaki miktarları toplatılarak TÜMSONUÇ sayfasına aktarılsın istiyorum..
 
Esasında sıralamaya bile gerek yok "C" sütununda bulunan mükerrer stok numaraları "Z sütununda bulunan sipariş durumlarına göre ayrılıp "G" sütunundaki miktarları toplatılarak TÜMSONUÇ sayfasına aktarılsın istiyorum..

Ne istediğinizi anlamadım biraz daha açıklama ekler misiniz_?
 
Mesela stok numarası sütununda 10 tane aynı stok numarasından var....

W sütununda sipariş durumlarına baktığımızda 2 tane ONARIM, 3 tane İADE EDİLDİ 5 tanede HEK var diyelim..toplam 10 oldu... Şimdi 2 tane ONARIM olanların "G" sütunundaki miktarların toplamlarını toplatıp TÜMSONUÇ sayfasında ONARIM hanesine eklesin..Dİğerlerinide aynı şekilde kendi hanelerine toplayıp eklesin...

http://www.excel.web.tr/f48/belli-kr...a-t104407.html buradaki örnekte "Z" sütununda * olanları süzüp gerisini uygulamıştık... Şimdi Tüm sonuçları istiyorum..O örnekte Z sütunundaki * süzme olayını kaldırırsak olur diye düşünüyorum ama ben beceremedim..
 
Mesela stok numarası sütununda 10 tane aynı stok numarasından var....

W sütununda sipariş durumlarına baktığımızda 2 tane ONARIM, 3 tane İADE EDİLDİ 5 tanede HEK var diyelim..toplam 10 oldu... Şimdi 2 tane ONARIM olanların "G" sütunundaki miktarların toplamlarını toplatıp TÜMSONUÇ sayfasında ONARIM hanesine eklesin..Dİğerlerinide aynı şekilde kendi hanelerine toplayıp eklesin...

http://www.excel.web.tr/f48/belli-kr...a-t104407.html buradaki örnekte "Z" sütununda * olanları süzüp gerisini uygulamıştık... Şimdi Tüm sonuçları istiyorum..O örnekte Z sütunundaki * süzme olayını kaldırırsak olur diye düşünüyorum ama ben beceremedim..

Şimdi ben anladığımı size aktarayım doğru mu anlamışım.
Önce C sütunundaki veriler tek'e düşürülecek.
Sonra Tek olan veriler ile C D E F G H I sütunlarındaki karşılıklara göre G sütunundaki değerleri toplayacak.
yani mesela
a adlı stoğun 10 girişi var
2 tane C sütununa 2 tane D sütununda
C sütununa karşılık gelenler biri 5 biri 7
D sütununa karşılık gelenler biri 25 biri 1 olsun
sizin C sütununda görmek istediğiniz sonuç 12
D sütununda görmek istediğiniz sonuç ise 26
doğru mu anlamaışım
 
Aynen öyle hocam...

Bu kodu dener misiniz_?
Kod:
Option Explicit
Sub tek_topla_61()
Dim ts, kaplan, trabzonspor, bordo
trabzonspor = MsgBox("Karşılıkları Toplamaya Başlıyorum", vbYesNo, "Onay")
If trabzonspor = vbNo Then Exit Sub
Application.ScreenUpdating = False
Sheets("TÜMSONUÇ").Range("A2:J65536").ClearContents
kaplan = 2: bordo = 0
For ts = 2 To Sheets("2011 SİPARİŞLER").Cells(65536, "C").End(xlUp).Row
If WorksheetFunction.CountIf(Sheets("2011 SİPARİŞLER").Range("C2:C" & ts), _
Sheets("2011 SİPARİŞLER").Cells(ts, "C")) = 1 Then
Sheets("TÜMSONUÇ").Cells(kaplan, "A") = Sheets("2011 SİPARİŞLER").Cells(ts, "C")
Sheets("TÜMSONUÇ").Cells(kaplan, "B") = Sheets("2011 SİPARİŞLER").Cells(ts, "D")
kaplan = kaplan + 1
End If
Next
For ts = 2 To Sheets("TÜMSONUÇ").Cells(65536, "A").End(xlUp).Row
For kaplan = 3 To 9
bordo = 0
For trabzonspor = 2 To Sheets("2011 SİPARİŞLER").Cells(65536, "C").End(xlUp).Row
If Sheets("2011 SİPARİŞLER").Cells(trabzonspor, "C") = Sheets("TÜMSONUÇ"). _
Cells(ts, "A") And Sheets("2011 SİPARİŞLER").Cells(trabzonspor, "W") = _
Sheets("TÜMSONUÇ").Cells(1, kaplan) Then
bordo = bordo + Sheets("2011 SİPARİŞLER").Cells(trabzonspor, "G")
Sheets("TÜMSONUÇ").Cells(ts, kaplan) = bordo
End If
Next
Next
Next
For ts = 2 To Sheets("TÜMSONUÇ").Cells(65536, "A").End(xlUp).Row
Sheets("TÜMSONUÇ").Cells(ts, "J") = WorksheetFunction.Sum( _
Sheets("TÜMSONUÇ").Range("C" & ts & ":I" & ts))
Next
Application.ScreenUpdating = True
MsgBox "Karşılıkları Topladım", vbInformation, "Bitiş"
End Sub
 
Çok teşekkürler hocam, Allah razı olsun...sizleri de yorduk hakkınızı helal edin...
 
Geri
Üst