• DİKKAT

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

Birden fazla veriyi aynı anda ayrı ayrı arama

Hocam önce ilk veriyi aktaracak sonra ikincisini aktaracak.
yani ilk ver 10 adet
ikinci 10 adet ise
toplamda aktardığı 20 olacak.
 
Selamlar,

Kayıtlar hangi sayfadan hangi sayfaya aktarılacak. Siz sorunuzda "Giriş" demişsiniz ama örnek dosyanızda STOK_DATA ve IRSALIYE isimli sayfalar mevcut.
 
Kusura bakmayın örnek maçlı giriş demiştim. ama çalışmamı gönderdim. irsaliyeden stok sayfasına.
 
Selamlar,

Aşağıdaki kodu denermisiniz.

Kod:
Sub AKTAR()
    İLK = Time
    Set SD = Sheets("STOK_DATA")
    Set SI = Sheets("IRSALIYE")
    Set WF = WorksheetFunction
    For X = 2 To SI.[A65536].End(3).Row
    SAY = WF.CountIf(SD.[A:A], SI.Cells(X, 1))
    If SAY = 0 Then
    SON_SATIR = SD.[A65536].End(3).Row + 1
    SD.Range("A" & SON_SATIR & ":F" & SON_SATIR).Value = SI.Range("A" & X & ":F" & X).Value
    ElseIf SAY > 0 Then
    SI.Cells(X, 4) = SI.Cells(X, 4) + WF.SumIf(SD.[A:A], SI.Cells(X, 1), SD.[D:D])
    End If
    Next
    SON = Time
    MsgBox "İŞLEM SÜRESİ : " & Format(SON - İLK, "hh:mm:ss.dd") & vbCrLf & vbCrLf & "İŞLEMİNİZ TAMAMLANMIŞTIR.", vbInformation
End Sub
 
Hocam önce cevabınız için teşekkür ederim.
İstediğim olmadı .
Bir kaç sorun var.
1. Birlileri irsaliye sayfasından alıp stok sayfasına arayıp bulacak ve bulduğu değerin D sutunundaki değeri ile irsaliye sayfasındaki D sutunundaki değeri ile toplayacak. Sonra stok sayfasına D sutununa topladığı değeri işleyecek.
Şanda irsaliye sayfasına işliyor.

2- İrsaliye sayfasında aradığı değer stok sayfasında yok ise stok sayfasının son satırına irsaliye sayfasındaki arağıdı değeri ekleyecek.
Kou bu şekilde düzenleyebilirmiyiz.
 
Selamlar,

Birinci sorunuzu tam anlayamadım. İkinci sorunuza gelince kod şu haliyle zaten dediğiniz işlemi yapıyor.
 
Hocam şu sekilde açıklmayayım.

İrsaliye sayfasında 50 satır var.
Stok sayfasında 11000 satır var.

irsaliye sayfasınının A hücresindeki 1101002 numarayı Stok sayfasının A sutununda arayacak . Bulduğunda Aradığı değerin İrsaliye sayfasında D sutunundaki değeri ile Stok sayfasının D sutunundaki değeri toplayıp stok sayfasının D sutunu yazacak.
 
Selamlar,

Eklemiş olduğunuz örnek dosyada önerdiğim kodu denedim ve "Carrefour ürün kodu" sütununa göre uyan kayıtların D sütunundaki değerleri "IRSALIYE" isimli sayfanın D sütununa ekliyor. Sanırım siz "STOK_DATA" isimli sayfanın D sütununa eklemesini istiyorsunuz. Eğer istediğiniz buysa "STOK_DATA" sayfasının D sütununda formül var bu formül silinip değerlermi toplanacak. Yoksa "IRSALIYE" sayfasının D sütunundaki değer formülün sonunamı eklenecek.
 
Hocam Kusura bakmayın sizi uğraştırdım
Formüller önemli değil formülleri kaldırabilirz. Sadece Koli bulmak için stok sayfasının E Sutununa D/E formülü ekletebiliriz.
 
Selamlar,

Yine tam olarak anladığımı sanmıyorum. Aşağıdaki kodu deneyip olumsuz sonuçları bildirirmisiniz.

Kod:
Sub AKTAR()
    İLK = Time
    Set SD = Sheets("STOK_DATA")
    Set SI = Sheets("IRSALIYE")
    Set WF = WorksheetFunction
    For X = 2 To SI.[A65536].End(3).Row
    SAY = WF.CountIf(SD.[A:A], SI.Cells(X, 1))
    If SAY = 0 Then
    SON_SATIR = SD.[A65536].End(3).Row + 1
    SD.Range("A" & SON_SATIR & ":F" & SON_SATIR).Value = SI.Range("A" & X & ":F" & X).Value
    ElseIf SAY > 0 Then
    SATIR = SD.[A:A].Find(SI.Cells(X, 1), LookAt:=xlWhole).Row
    SD.Cells(SATIR, 4) = SD.Cells(SATIR, 4) + SI.Cells(X, 4)
    [COLOR=RED]SD.Cells(SATIR, 6) = SD.Cells(SATIR, 4) / SI.Cells(X, 5)[/COLOR]
    End If
    Next
    SON = Time
    MsgBox "İŞLEM SÜRESİ : " & Format(SON - İLK, "hh:mm:ss.dd") & vbCrLf & vbCrLf & "İŞLEMİNİZ TAMAMLANMIŞTIR.", vbInformation
End Sub
 
Son düzenleme:
Hocam teşekkürler.
Kodu tam anblamıyla test edemedim. Ettiğim kadarıyla istediğim gibi olm uşa benziyor.
Stok sayfasında olmayan bir ürünü eklediğinde A f arasını ekliyor bunu F sutununa D/E nin sonucu olarak ektebilirmiyiz.
 
Selamlar,

Zaten A-F sütun aralığına olmayan veriyi aktarıyor. Neden D/E sonucunu tekrar F sütununa aktarmak istiyorsunuz.
 
Olmayan veriden 2 adet olduğunda ilkini aktarıyor. İkincisinin ise d sununu ile topluyor. Bu sebeple f sutunundaki değer olduğu gibi kalıyor.

Bu sebeple f sutununa d/e yaparsak o veride değişmiş olacak.
 
Selamlar,

D/E işlemi en son eklenen kayıt için STOK_DATA isimli sayfayamı yapılacak.
 
Selamlar,

Sanırım ne demek istediğinizi anladım. Üstteki önerdiğim kodu güncelledim. İncelermisiniz.
 
Teşekkürler tam istediğim gibi olmuş. Ellerinize Sağlık.
 
Geri
Üst