Başka Sayfadaki Verileri Bulup Yeni Sayfaya Yazdırmak.

VBA Makrolar ile ilgili sormak istedikleriniz, yapmak istedikleriniz hakkında yardım alabileceğiniz bölümdür.

Başka Sayfadaki Verileri Bulup Yeni Sayfaya Yazdırmak.

İleti#1)  itouchcanmedia » 14 Şub 2020 11:39

Arkadaşlar detayları örnek dosyada anlattım. Benim için daha doğrusu babamın dükkanında kullanmak için bize çok lazım olan bir kod isteğimiz var. Yardımcı olursanız çok seviniriz.
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Kullanıcı avatarı
itouchcanmedia
Yeni Başlamış
 
Kayıt: 25 Oca 2018 15:39
Meslek: esnaf
Yaş: 40
İleti: 70
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: istanbul/bahçeşehir

Cevap: Başka Sayfadaki Verileri Bulup Yeni Sayfaya Yazdırmak

İleti#2)  OmerFaruk72 » 14 Şub 2020 12:08

Kod: Tümünü seç
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.Column <> 1 Then Exit Sub
Bul = ActiveCell.Offset(0, 10)
If Bul = "" Then Exit Sub
Set sh1 = Worksheets("depo ürün listesi")
Set sh2 = Worksheets("sonuç")
sh2.Cells = ""
son = sh1.Cells(1, 1).End(xlDown).Row
For i = 1 To son

    If sh1.Cells(i, 1) = Bul Then
    k = k + 1
        sh2.Cells(k, 1) = sh1.Cells(i, 1)
        sh2.Cells(k, 2) = sh1.Cells(i, 2)
        sh2.Cells(k, 3) = sh1.Cells(i, 3)
        sh2.Cells(k, 4) = sh1.Cells(i, 4)
        sh2.Cells(k, 5) = sh1.Cells(i, 5)
    End If
    sh2.Activate
Next i
End Sub
Kullanıcı avatarı
OmerFaruk72
Siteye Alışmış
 
Kayıt: 15 Ekm 2018 10:39
Meslek: Elektrik Mühendisi
Yaş: 47
İleti: 105
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara/Çankaya

Cevap: Başka Sayfadaki Verileri Bulup Yeni Sayfaya Yazdırmak

İleti#3)  itouchcanmedia » 14 Şub 2020 14:44

ömerfaruk bey çok ama çok teşekkürler. örnek dosya için harika çalıştı ancak ben bir hata yapmışım (aslında düşünemedim) şöyleki;
Orjinal dosyamdaki "depo ürün listesi" sayfasında veriyi "A" sütununda aramamalı, veriyi "CM" sütununda aramalı ve bulduğu satırlardaki CN,CO,CP,CQ,CR verilerini de alıp sonuç sayfasına yazmalı. bu nedenle hata verdi sanırım. kodu nasıl düzenlemeliyim. bir iki saattir uğraşıyorum çözemedim henüz.
Kullanıcı avatarı
itouchcanmedia
Yeni Başlamış
 
Kayıt: 25 Oca 2018 15:39
Meslek: esnaf
Yaş: 40
İleti: 70
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: istanbul/bahçeşehir

Cevap: Cevap: Başka Sayfadaki Verileri Bulup Yeni Sayfaya Ya

İleti#4)  itouchcanmedia » 14 Şub 2020 14:46

OmerFaruk72 yazdı:
Kod: Tümünü seç
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.Column <> 1 Then Exit Sub
Bul = ActiveCell.Offset(0, 10)
If Bul = "" Then Exit Sub
Set sh1 = Worksheets("depo ürün listesi")
Set sh2 = Worksheets("sonuç")
sh2.Cells = ""
son = sh1.Cells(1, 1).End(xlDown).Row
For i = 1 To son

    If sh1.Cells(i, 1) = Bul Then
    k = k + 1
        sh2.Cells(k, 1) = sh1.Cells(i, 1)
        sh2.Cells(k, 2) = sh1.Cells(i, 2)
        sh2.Cells(k, 3) = sh1.Cells(i, 3)
        sh2.Cells(k, 4) = sh1.Cells(i, 4)
        sh2.Cells(k, 5) = sh1.Cells(i, 5)
    End If
    sh2.Activate
Next i
End Sub



ömerfaruk bey çok ama çok teşekkürler. örnek dosya için harika çalıştı ancak ben bir hata yapmışım (aslında düşünemedim) şöyleki;
Orjinal dosyamdaki "depo ürün listesi" sayfasında veriyi "A" sütununda aramamalı, veriyi "CM" sütununda aramalı ve bulduğu satırlardaki CN,CO,CP,CQ,CR verilerini de alıp sonuç sayfasına yazmalı. bu nedenle hata verdi sanırım. kodu nasıl düzenlemeliyim. bir iki saattir uğraşıyorum çözemedim henüz.
Kullanıcı avatarı
itouchcanmedia
Yeni Başlamış
 
Kayıt: 25 Oca 2018 15:39
Meslek: esnaf
Yaş: 40
İleti: 70
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: istanbul/bahçeşehir

REKLAM
Excel Logo XML Oluşturucu
Logo Object Designer ile Uyarlama

Cevap: Başka Sayfadaki Verileri Bulup Yeni Sayfaya Yazdırmak

İleti#5)  itouchcanmedia » 14 Şub 2020 14:52

uyarıyı bu satırda veriyor;

If sh1.Cells(i, 1) = Bul Then
Kullanıcı avatarı
itouchcanmedia
Yeni Başlamış
 
Kayıt: 25 Oca 2018 15:39
Meslek: esnaf
Yaş: 40
İleti: 70
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: istanbul/bahçeşehir

Cevap: Cevap: Başka Sayfadaki Verileri Bulup Yeni Sayfaya Ya

İleti#6)  OmerFaruk72 » 14 Şub 2020 15:49

Kod: Tümünü seç
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.Column <> 1 Then Exit Sub
Bul = ActiveCell.Offset(0, 10)
If Bul = "" Then Exit Sub
Set sh1 = Worksheets("depo ürün listesi")
Set sh2 = Worksheets("sonuç")
sh2.Cells = ""
son = sh1.Cells(1, 91).End(xlDown).Row
For i = 1 To son

    If sh1.Cells(i, 91) = Bul Then
    k = k + 1
        sh2.Cells(k, 1) = sh1.Cells(i, 91)
        sh2.Cells(k, 2) = sh1.Cells(i, 92)
        sh2.Cells(k, 3) = sh1.Cells(i, 93)
        sh2.Cells(k, 4) = sh1.Cells(i, 94)
        sh2.Cells(k, 5) = sh1.Cells(i, 95)
        sh2.Cells(k, 6) = sh1.Cells(i, 96)
    End If
    sh2.Activate
Next i
End Sub
Kullanıcı avatarı
OmerFaruk72
Siteye Alışmış
 
Kayıt: 15 Ekm 2018 10:39
Meslek: Elektrik Mühendisi
Yaş: 47
İleti: 105
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara/Çankaya

REKLAM
ETA - Excel Konsolide Raporlama
ETA Excel Personel Entegre Raporu

Cevap: Cevap: Cevap: Başka Sayfadaki Verileri Bulup Yeni Say

İleti#7)  itouchcanmedia » 14 Şub 2020 16:47

OmerFaruk72 yazdı:
Kod: Tümünü seç
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If ActiveCell.Column <> 1 Then Exit Sub
Bul = ActiveCell.Offset(0, 10)
If Bul = "" Then Exit Sub
Set sh1 = Worksheets("depo ürün listesi")
Set sh2 = Worksheets("sonuç")
sh2.Cells = ""
son = sh1.Cells(1, 91).End(xlDown).Row
For i = 1 To son

    If sh1.Cells(i, 91) = Bul Then
    k = k + 1
        sh2.Cells(k, 1) = sh1.Cells(i, 91)
        sh2.Cells(k, 2) = sh1.Cells(i, 92)
        sh2.Cells(k, 3) = sh1.Cells(i, 93)
        sh2.Cells(k, 4) = sh1.Cells(i, 94)
        sh2.Cells(k, 5) = sh1.Cells(i, 95)
        sh2.Cells(k, 6) = sh1.Cells(i, 96)
    End If
    sh2.Activate
Next i
End Sub



Ömer bey çok ama çok teşekkür ederim tamamdır. :)
Kullanıcı avatarı
itouchcanmedia
Yeni Başlamış
 
Kayıt: 25 Oca 2018 15:39
Meslek: esnaf
Yaş: 40
İleti: 70
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: istanbul/bahçeşehir

Cevap: Başka Sayfadaki Verileri Bulup Yeni Sayfaya Yazdırmak

İleti#8)  itouchcanmedia » 14 Şub 2020 17:08

Tek sorun biraz yavaş hesaplıyor. binlerce veri olduğu için sanırım "false" komutunu kullandım çok az daha hızlandı ama yinede uzun sürüyor yaklaşık 1 dakika. Bu konuda yapabileceğimiz birşey var mı acaba?
Kullanıcı avatarı
itouchcanmedia
Yeni Başlamış
 
Kayıt: 25 Oca 2018 15:39
Meslek: esnaf
Yaş: 40
İleti: 70
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: istanbul/bahçeşehir

Cevap: Cevap: Cevap: Cevap: Başka Sayfadaki Verileri Bulup Y

İleti#9)  OmerFaruk72 » 18 Şub 2020 08:42

Kod: Tümünü seç
For i = 1 To son
    If sh1.Cells(i, 91) = Bul Then
    k = k + 1
        sh2.Cells(k, 1) = sh1.Cells(i, 91)
        sh2.Cells(k, 2) = sh1.Cells(i, 92)
        sh2.Cells(k, 3) = sh1.Cells(i, 93)
        sh2.Cells(k, 4) = sh1.Cells(i, 94)
        sh2.Cells(k, 5) = sh1.Cells(i, 95)
        sh2.Cells(k, 6) = sh1.Cells(i, 96)
    End If
    sh2.Activate
Next i


Bu kısmı FIND komutuyla düzenleyip denerseniz çok daha hızlı çalışacaktır
Kullanıcı avatarı
OmerFaruk72
Siteye Alışmış
 
Kayıt: 15 Ekm 2018 10:39
Meslek: Elektrik Mühendisi
Yaş: 47
İleti: 105
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Ankara/Çankaya


Forum Genel Makro Soruları

Online Kullanıcılar

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 1 misafir

Bumerang - Yazarkafe