Soru Koşullu Veri Getirme

Katılım
20 Nisan 2016
Mesajlar
3
Excel Vers. ve Dili
2013 Türkçe
Altın Üyelik Bitiş Tarihi
01/11/2018
Herkese Merhaba,

Ekte yüklediğim excelde Sayfa 1'deki değerleri dinamik olarak Sayfa 2'deki C sütununa getirmek istiyorum.

Örn.
Sayfa 2 A8 hücresindeki 9770000072536 değerine baktığımızda miktarı 1 gözüküyor. Sayfa 1 de 9770000072536
değerini bulup yanındaki miktar "6" tamamlanana kadar E-TİCARET MAĞAZA SAĞLAM yazdır.

Sayfa 2'deki C sütununa yukarıdaki mantığa göre gelmesi gereken değerleri el ile yazdım bunu formülize etmek istiyorum.

Dosyayı indirmek için;

https://we.tl/t-iOstAVEJL2

Yardımlarınız için teşekkürler.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Aşağıdaki makroyu deneyiniz:
PHP:
Sub yinele()
Set s1 = Sheets("Sayfa 1")
Set s2 = Sheets("Sayfa 2")

son1 = s1.Cells(Rows.Count, "A").End(3).Row
eski = WorksheetFunction.Max(2, s2.Cells(Rows.Count, "A").End(3).Row)
uyar = MsgBox("Sayfa2'deki eski veriler silinsin mi?", vbYesNo)
If uyar = vbYes Then
    s2.Range("A2:C" & eski).ClearContents
End If
For i = 2 To son1
    If s1.Cells(i, "C") <> "" Then
        If IsNumeric(s1.Cells(i, "C")) = True Then
            For j = 1 To s1.Cells(i, "C")
                yeni = s2.Cells(Rows.Count, "A").End(3).Row + 1
                s2.Cells(yeni, "A") = s1.Cells(i, "A")
                s2.Cells(yeni, "B") = 1
                s2.Cells(yeni, "C") = s1.Cells(i, "B")
            Next
        End If
    End If
Next
End Sub
 
Katılım
20 Nisan 2016
Mesajlar
3
Excel Vers. ve Dili
2013 Türkçe
Altın Üyelik Bitiş Tarihi
01/11/2018
Sub yinele() Set s1 = Sheets("Sayfa 1") Set s2 = Sheets("Sayfa 2") son1 = s1.Cells(Rows.Count, "A").End(3).Row eski = WorksheetFunction.Max(2, s2.Cells(Rows.Count, "A").End(3).Row) uyar = MsgBox("Sayfa2'deki eski veriler silinsin mi?", vbYesNo) If uyar = vbYes Then s2.Range("A2:C" & eski).ClearContents End If For i = 2 To son1 If s1.Cells(i, "C") <> "" Then If IsNumeric(s1.Cells(i, "C")) = True Then For j = 1 To s1.Cells(i, "C") yeni = s2.Cells(Rows.Count, "A").End(3).Row + 1 s2.Cells(yeni, "A") = s1.Cells(i, "A") s2.Cells(yeni, "B") = 1 s2.Cells(yeni, "C") = s1.Cells(i, "B") Next End If End If Next End Sub
Çok teşekkürler fakat sanırım yanlış anlattım. Sayfa 2'deki A ve B sütunundaki verilere göre Sayfa 1'deki stok miktarlarını karşılaştırıp hangi depoda stok mevcutsa o stok yerinin ismini yazdırmaya çalışıyorum.

İlettiğiniz makro Sayfa 1 deki stokları tekilleştiriyor.

Geri dönüşünüz için çok teşekkürler.
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Sayfa 2 A8 hücresindeki 9770000072536 değerine baktığımızda miktarı 1 gözüküyor. Sayfa 1 de 9770000072536
değerini bulup yanındaki miktar "6" tamamlanana kadar E-TİCARET MAĞAZA SAĞLAM yazdır.
Bu ifade ile

Sayfa 2'deki A ve B sütunundaki verilere göre Sayfa 1'deki stok miktarlarını karşılaştırıp hangi depoda stok mevcutsa o stok yerinin ismini yazdırmaya çalışıyorum.
bu ifade aynı şeyi mi anlatıyor yani? :)

Asıl istediğinizi maalesef anlayamadım.
 
Üst