[Yardım]  Diğer Sayfalarla Karşılaştırsın İlk Satırı

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

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#41)  avnitoto » 05 May 2019 19:26

Tamam Sağol ç yerine : yazarım yarın
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#42)  avnitoto » 13 May 2019 08:49

iyi Günler
Feraz Ustanın Dikkatine

Geçen yaptığınız programa da ben 10000 satırlık istemiştim ama şimdi 1000000 satırlı icap etti bunu 1000000 satıra
ayarlamak mümkün mü

50000 satırı yazılı ekte dosyayı gönderiyorum (1000000 yaptıydım 11 mb tuttu gönderme izni vermedi sistem bende 50000 satıra indirdim) 50000 DE DE RUN-TİME HATASI VERİYOR

Ekte dosyayı gönderiyorum
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#43)  feraz » 13 May 2019 09:24

Dosyaya sonra bakayım önce bir integer olanları Lıng ile değiştirip deneyin.
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#44)  avnitoto » 13 May 2019 10:41

Feraz ustam 50000 satırı integerları long yapınca oldu ama 15 dakika gibi sürdü bu normalmi

1000000 satır yapınca 2-3 dakika sonra aşağıdaki hatayı verdi

Run time error 13
Type mismatch
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

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

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#45)  feraz » 13 May 2019 10:46

1 milyon satırlık döngü üstünede sütun döngüleri vs..
Valla 15 dakikada biterse iyi yinee :)
Akşama doğru bir bakarım fakat zor görüküyor.
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#46)  feraz » 13 May 2019 10:47

avnitoto yazdı:Feraz ustam 50000 satırı integerları long yapınca oldu ama 15 dakika gibi sürdü bu normalmi

1000000 satır yapınca 2-3 dakika sonra aşağıdaki hatayı verdi

Run time error 13
Type mismatch


Kaç sütun ile yapınca 50 bine göre 15 dakika sürdü?
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

REKLAM
ETA - Excel Konsolide Raporlama
ETA Excel Personel Entegre Raporu

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#47)  avnitoto » 13 May 2019 10:58

210 sütun
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#48)  feraz » 13 May 2019 11:18

Müsait olunca alternatif kodlada yapabilirsem yazarım üstadım ama zor gibi.
50bin hadi neysede 1miyon imkansız gibi :)
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#49)  avnitoto » 13 May 2019 11:31

tamam Sağol
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#50)  feraz » 13 May 2019 20:22

Kodlarla uğraştım ve alttaki gibi kısalttım fakat fazla etkilenmedi.
Ektekini ise formülle yaptım fazla satırda denemedim.

Sayfa1 M1 satırına alttaki formülü ekleyip sağa ve alta çekilince veriler geliyor.

Kod: Tümünü seç
=EĞER(DOLAYLI(DOLAYLI("Sayfa2!"&ADRES(SÜTUN()-11;1;1))&SATIR($A2))&DOLAYLI(DOLAYLI("Sayfa2!"&ADRES(SÜTUN()-11;2;1))&SATIR($A2))&DOLAYLI(DOLAYLI("Sayfa2!"&ADRES(SÜTUN()-11;3;1))&SATIR($A2))&DOLAYLI(DOLAYLI("Sayfa2!"&ADRES(SÜTUN()-11;4;1))&SATIR($A2))&DOLAYLI(DOLAYLI("Sayfa2!"&ADRES(SÜTUN()-11;5;1))&SATIR($A2))&DOLAYLI(DOLAYLI("Sayfa2!"&ADRES(SÜTUN()-11;6;1))&SATIR($A2))=DOLAYLI(BİRLEŞTİR("Sayfa2!$I";SÜTUN()-11));"Sil";"Silme")

Sayaf2 I2 formülüde altta.
Bu arada Sayfa2 yi değiştirdim.
Deneyebilirsiniz.Eğer formül doğru çalışırsa formülü koda ekeyip deneriz.

Kod: Tümünü seç
=DOLAYLI("Sayfa1!"&A2&1)&DOLAYLI("Sayfa1!"&B2&SATIR(B1))&DOLAYLI("Sayfa1!"&C2&1)&DOLAYLI("Sayfa1!"&D2&1)&DOLAYLI("Sayfa1!"&E2&1)&DOLAYLI("Sayfa1!"&F2&1)




Kod: Tümünü seç
Dim i As Long, ii As Long, iii As Long, arr1(), arr2(), son As Long, arr3, a

Sub Araaa()

       Dim k As Long, arr()
       Application.ScreenUpdating = False
        Sheets("Sayfa1").Range("M:HN").Clear
        aa = 0
        With Sheets("Sayfa2")
            arr = .Range("A2:B" & .Cells(Rows.Count, 1).End(3).Row).Value
            Application.ScreenUpdating = False
            Application.StatusBar = "Bekleyin kod devam ediyor..."
            arr3 = Array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J")
            son = Sheets("Sayfa1").Cells(Rows.Count, 1).End(3).Row
            arr2 = Sheets("Sayfa1").Range("A1:J" & son).Value
   
                For k = LBound(arr) To UBound(arr)
                    Call kombnasyon(arr(k, 1), arr(k, 2))
                Next
            Application.ScreenUpdating = True
        End With

        Application.ScreenUpdating = True
        Application.StatusBar = vbNullString
        MsgBox "Bitti", vbInformation, "Bilgi"

    Erase arr1: Erase arr2: Erase arr3: i = Empty: ii = Empty: iii = Empty: son = Empty: a = vbNullString
    Erase arr

End Sub


Sub kombnasyon(aranacakYerler, hngstnkaydet)

       
        For ii = LBound(arr3) To UBound(arr3)
            For iii = 0 To 5
                If Split(aranacakYerler, ";")(iii) = arr3(ii) Then a = a & ii + 1 & ","
            Next
           
        Next

        ReDim arr1(1 To son, 1 To 1)

        For i = 2 To son


   arr1(i - 1, 1) = IIf(arr2(i, Split(a, ",")(0)) & _
                        arr2(i, Split(a, ",")(1)) & _
                        arr2(i, Split(a, ",")(2)) & _
                        arr2(i, Split(a, ",")(3)) & _
                        arr2(i, Split(a, ",")(4)) & _
                        arr2(i, Split(a, ",")(5)) = arr2(1, Split(a, ",")(0)) & _
                                                    arr2(1, Split(a, ",")(1)) & _
                                                    arr2(1, Split(a, ",")(2)) & _
                                                    arr2(1, Split(a, ",")(3)) & _
                                                    arr2(1, Split(a, ",")(4)) & _
                                                    arr2(1, Split(a, ",")(5)), "Sil", "Silme")

        Next i
        Sheets("Sayfa1").Range(hngstnkaydet & 2).Resize(i - 2, 1).Value = arr1
   
End Sub
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#51)  feraz » 13 May 2019 20:41

Formülde bir hata olmuş.
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#52)  avnitoto » 13 May 2019 21:41

Mobilden bakıyorum formülde hata olmuş yazmışsıniz bugünkü yazdığınız formülde mi yoksa eski yazdığınızda mı hata olmuş
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#53)  avnitoto » 14 May 2019 10:58

İyi günler Feraz ustam

Söylemişmiydim ben acemiyim vba da

Ben geliştirici/visual basic/ tıkladığımda kodlar gözükmüyor (diger yaptıklarınızda kodları görebiliyordum)

son gönderdiğiniz dosyada kodlar nasıl gözükür ben 1000000 kodu eklediğimde çalıstır deyince macro ismi ver ve oluştur diye pencere geliyor bende son gönderdiğiniz dosyanın bir üstündeki kodları kopyala yapıştır yaptım 1000000 satır ekledim

Runtime error 9
subscription out of range hatası verdi

son gönderdiğiniz dosyanın kodlarında görebilseydim belki çalışırdı
son gönderdiğiniz dosyanın kodlarını nasıl görebilirim
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

Cevap: Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#54)  feraz » 14 May 2019 11:12

avnitoto yazdı:Mobilden bakıyorum formülde hata olmuş yazmışsıniz bugünkü yazdığınız formülde mi yoksa eski yazdığınızda mı hata olmuş


Son dosya hatasız dosya.
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#55)  feraz » 14 May 2019 11:15

avnitoto yazdı:İyi günler Feraz ustam

Söylemişmiydim ben acemiyim vba da

Ben geliştirici/visual basic/ tıkladığımda kodlar gözükmüyor (diger yaptıklarınızda kodları görebiliyordum)

son gönderdiğiniz dosyada kodlar nasıl gözükür ben 1000000 kodu eklediğimde çalıstır deyince macro ismi ver ve oluştur diye pencere geliyor bende son gönderdiğiniz dosyanın bir üstündeki kodları kopyala yapıştır yaptım 1000000 satır ekledim

Runtime error 9
subscription out of range hatası verdi

son gönderdiğiniz dosyanın kodlarında görebilseydim belki çalışırdı
son gönderdiğiniz dosyanın kodlarını nasıl görebilirim


İyi günler üstadım.Son dosya formüllü olduğu için kodları silmiştim.Uygun vakit olunca bu formülü koda çevireğim ve birde böyle deneyeceğim hızı.
İşten dolayı yeni gördüm mesajınızı.Formüllü dosya doğru sonuç veriyor mu?
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#56)  avnitoto » 14 May 2019 13:28

formüllü dosyaya bir göz attım düzgün çalışıyor gibi görünüyor
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#57)  feraz » 14 May 2019 14:07

Fırsat bulunca şöyle yapacağım olursa.
Kod a formülü ekleyeceğim ve çalışınca son dolu sütun ve satıra kadar formül ekleteceğim.En sonundada formüllü yerleri değer olarak değiştirteceğim.
Bakalım nasıl olacak.
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#58)  avnitoto » 14 May 2019 16:26

Tamam Sağol ustam
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#59)  feraz » 14 May 2019 16:44

Bişey değil üstad.
Formülü koda ekledim 10bin satılık denedim 5 dakika sürdü 210 sütunluk.
Yani bu durumda 1 Milyonluk satırı düşünemiyorum :)
Belki başka bir üye daha hızlı yapar diyecğim ama sanmıyorum nedense ben cevap yazınca kimse katılmıyor konuya alternatif olarak :)

Bir deneyin.

Kod: Tümünü seç
Sub Kaydet()

Dim sonSayfa1Hcr As Long, sonSayfa2Hcr As Long
Dim s1 As Worksheet, s2 As Worksheet

Set s1 = Sheets("Sayfa1")
Set s2 = Sheets("Sayfa2")

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

s2.Range("I2:I" & Rows.Count).Value = ""

With s1
    sonSayfa1Hcr = .Cells(Rows.Count, 1).End(3).Row
    sonSayfa2Hcr = s2.Cells(Rows.Count, 1).End(3).Row
    With s2.Range("I2:I" & sonSayfa2Hcr)
          .FormulaR1C1 = _
            "=INDIRECT(""Sayfa1!""&RC[-8]&1)&INDIRECT(""Sayfa1!""&RC[-7]&1)&INDIRECT(""Sayfa1!""&RC[-6]&1)&INDIRECT(""Sayfa1!""&RC[-5]&1)&INDIRECT(""Sayfa1!""&RC[-4]&1)&INDIRECT(""Sayfa1!""&RC[-3]&1)"
    End With
   
    .Range("M2:HN" & Rows.Count).ClearContents
   
    With .Range(.Cells(2, "M"), .Cells(sonSayfa1Hcr, WorksheetFunction.CountA(Sheets("Sayfa2").Range("A:A")) + 11))
        .FormulaR1C1 = _
            "=IF(INDIRECT(INDIRECT(""Sayfa2!""&ADDRESS(COLUMN()-11,1,1))&ROW(RC1))&INDIRECT(INDIRECT(""Sayfa2!""&ADDRESS(COLUMN()-11,2,1))&ROW(RC1))&INDIRECT(INDIRECT(""Sayfa2!""&ADDRESS(COLUMN()-11,3,1))&ROW(RC1))&INDIRECT(INDIRECT(""Sayfa2!""&ADDRESS(COLUMN()-11,4,1))&ROW(RC1))&INDIRECT(INDIRECT(""Sayfa2!""&ADDRESS(COLUMN()-11,5,1))&ROW(RC1))&INDIRECT(INDIRECT(""Sayfa2!""&ADDR" & _
            "ESS(COLUMN()-11,6,1))&ROW(RC1))=INDIRECT(CONCATENATE(""Sayfa2!$I"",COLUMN()-11)),""Sil"",""Silme"")" & _
            ""
         .Value = .Value
    End With
    s2.Range("I2:I" & sonSayfa2Hcr).Value = s2.Range("I2:I" & sonSayfa2Hcr).Value
End With
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
MsgBox "Bitti"
Set s1 = Nothing: Set s2 = Nothing

End Sub
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Kullanıcı avatarı
feraz
Site Dostu
 
Kayıt: 19 May 2014 17:36
Konum: Almanya
Meslek: İşçi
Yaş: 40
İleti: 5838
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Aksaray

Cevap: Diğer Sayfalarla Karşılaştırsın İlk Satırı

İleti#60)  avnitoto » 15 May 2019 16:23

Güzel olmuş Çok sağol
eline sağlık
Kullanıcı avatarı
avnitoto
Yeni Başlamış
 
Kayıt: 19 Şub 2019 09:31
Meslek: bilgisayar
Yaş: 56
İleti: 58
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: Kmaraş

ÖncekiSonraki

Forum Genel Makro Soruları

Online Kullanıcılar

Bu forumu görüntüleyenler: Bing[Bot], Yandex[Bot] ve 2 misafir

Bumerang - Yazarkafe