Text veri alma ve kritere göre sayfalara aktarma

Çözüldü Text veri alma ve kritere göre sayfalara aktarma

  • Konuyu başlatan Konuyu başlatan tukayf
  • Başlangıç tarihi Başlangıç tarihi

tukayf

Normal Üye
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Değerli hocalarım yine bana ait bir konu olan Çözüldü - iki satır arası veri alma başlıkta sorularım çözüme ulaştı ancak yaptığımız işleri daha da kısaltmak ve otomatik hale getirmek istiyorum.
Kullandığımız program bizlere .log uzantılı metin belgesinde verileri çıktı olarak veriyor. Ekli dosyayı görüntüle 7036
Biz bu metin belgesini excele aldıktan sonra öncelikle içerisinde -stop loss #****- şeklinde olan verileri filtreleyipEkli dosyayı görüntüle 7037 metni sütunlara dönüştürdükten sonra sadece oradaki rakamları alıyoruz.Ekli dosyayı görüntüle 7038
Daha sonra ise tüm aldığımız tüm verileri gene metni sütunlara dönüştür ile sadece bizim işimizi yarayacak kısmını alıyoruz.
Ekli dosyayı görüntüle 7039
Bu işlemden sonra Sn Ömer BARAN'ın kodları ile
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [B1]) Is Nothing Then Exit Sub
Range("B2:B" & Rows.Count).ClearContents
Set XDilk = [A:A].Find(" open #" & Target.Value & " ", LookIn:=xlValues, LookAt:=xlPart)
If Not XDilk Is Nothing Then
Set XDson = Range("A" & XDilk.Row & ":A" & Rows.Count).Find(" modify #" & Target.Value & " ", LookIn:=xlValues, LookAt:=xlPart)
If Not XDson Is Nothing Then: Range(Cells(XDilk.Row, 1), Cells(XDson.Row, 1)).Copy [B2]
End If
End Sub

B den itibaren listeletiyoruz. DAha sonra ise yine Ömer Bey'in kodları ile buy ve sell sayfalarına aktarıyoruz. Sizden ricam eğer mümkünse bu işlemleri daha da kısaltmak ve otomatikleştirmek.
 

Ekli dosyalar

  • 1607166704017.webp
    1607166704017.webp
    204.7 KB · Görüntüleme: 126
  • 1607166770662.webp
    1607166770662.webp
    145.9 KB · Görüntüleme: 81
  • 1607166866138.webp
    1607166866138.webp
    126.8 KB · Görüntüleme: 75
  • 1607166943720.webp
    1607166943720.webp
    139.9 KB · Görüntüleme: 74
Sayın @Tukayf .

Son gönderdiğiniz log dosyasını açmak bile sıkıntılı.
Belgeyi açabiliyorsanız; BUY ve SELL sayfalarına aktarılması gereken verilerden SON 5'er tanesinin satırını ayrıca iletebilir misiniz?
Yani, belgede sondan başa doğru tarama yapıp. BUY ve SELL sayfalarına ilgili kısmı aktarılacak 5'er satırlık veriyi ayrı bir dosya olarak iletirseniz, oluşturduğum yeni makronun doğru sonuç verip vermediğini anlamak istiyorum.

.
 
Hocam çocuğun online sınavı vardı cevap gecikti kusura bakmayın.
Buy listesi
(x==11 && y==16 && z==22)||
(x==11 && y==16 && z==11)||
(x==11 && y==16 && z==21)||
(x==11 && y==16 && z==23)||
(x==11 && y==16 && z==13)||

Sell listesi
(x1==18 && y1==15 && z1==18)||
(x1==18 && y1==15 && z1==13)||
(x1==18 && y1==15 && z1==11)||
(x1==18 && y1==15 && z1==10)||
(x1==15 && y1==14 && z1==21)||

Son 5 satırlar hocam. Orijinal dosya yerine verileri kopyala yapıştır ile çoğalttım. Tekrar eden veriler hata değil kopyala yapıştırın sonucu. Tekrardan çok sağolun.
Hocam erase kodunu nette bulduğum bir kaç kodda uygulamaya çalıştım ancak başarılı olamadım. Kodla ilgili bir açıklama yapabilir misiniz acaba.
 
Sorunuzu yanlış anlamışım hocam. Kodlar çalışıyor sıkıntı yok. 6 milyon satırlık verideki tüm buy ları bulmuş ancak bunu buy sayfasına aktarırken #yok olarak aktarmış 36 bin satırdan sonrası yok olarak aktarılmış durumda. bu kısmı çözebilirsek sorun yok.
 

Ekli dosyalar

  • 1612614737935.webp
    1612614737935.webp
    69.3 KB · Görüntüleme: 3
Bir önceki mesajınıza göre, hazırladığım kodu çalıştırıp son verilerle karşılaştırdığımda sorun görmedim.
Ancak iki ayrı kod oluşturmuştum, her iki kod sonucunun son 5 verisi, belirttiğinizle aynı ancak satır sayıları farklı oldu.
Onu anlamaya, farkı tespit etmeye bakıyorum.
Kod1 BUY: 102.144 satır, SELL: 35.841 satır
Kod2 BUY: 102.076 satır, SELL: 35.772 satır

Peki siz nihai sonuç olarak BUY ve SELL kısmında TAM OLARAK kaç satırlık veri olması gerektiğini tespit edebiliyor musunuz?


Esas olarak .... = Empty, Set .... = Nothing, ERASE ..... gibi kod kısımları, çalışan makronun bilgisayarın hafızasına (RAM) aldığı verilerin hafızadan silinmesi işlemidir. Amaç, esas olarak bilgisayarı-işlemciyi RAHATLATMAK diyeyim.

Kullanılmasa da çok sıkıntı olmaz diye biliyorum. Biraz da alışkanlık durumuna göre kullanılıyor veya kullanılmıyor.
ERASE kodu DİZİ türü değişkenleri, Set xxx = Nothing kodu SET ile tanımlanan değişkenleri, .... = Empty ise diğer türden değişkenleri hafızadan silmeye yarar (biraz daha detay var, kabaca böyle diyelim) .
 
Tamam ben cevabı vereyim en iyisi.

İşlem süresi, benim emektar bilgisayarda 20-24 saniye.
Sizin bilgisayarınızdaki süre sonucunu iletirseniz sevinirim.

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(59 satır)
 
6.777.000 satırlık txt belgenin satır satır okutulup,
koşullu bulma ve iki sayfaya ayrıştırılmış 138.000 satırlık sonuç için bence de makul süre.

Bir de PowerQuery ben kullanamıyorum. Bu yöntemle, aynı dosya için işlem süreni öğrenebilir miyim?

Kaldı ki NOT DEFTERİnde açamadığım, WORDPAD ile açıp CTRL+END tuşuyla sonuna gidemedeğim bir belge.

1612623339639.webp
 
Moderatörün son düzenlenenleri:
Hocam powerQuery'i bende kullanamıyorum. Onu da başka forumda aynı soruyu sorduğumda sağolsun bir hocamız çözüp gönderdi. PowerQuery'de pc nin durumuna göre değişiklik gösteriyor. Aynı pc de denediğimde kodlar 13 sn. sorgu 14 sn de işlemi bitirdi. Daha üstün pc de deneyeceğim ilerleyen saatlerde. onları da yazarım.
 
Hocam PC niz standart bir kullanıcı ya da normal bir ofis kullanıcısı için gayet iyi. i5 işlemci de iyi bir işlemci tabi nesli de önemli burda. Hardisk te sıkıntı varsa kesinlikle SSD hardisk ile değiştirin. Şu an yeni bir PC almakta cep yakıyor malum dolar fırlayınca fiyatlar katlandı ve öylece kaldı. Sizin PC de işlem 15 sn den fazla süreceğini zannetmiyorum. Tabi ram ve işlemciyi kullanan başka programlar yoksa. Donanımdan anlayan arkadaşlarım hatam varsa düzeltsinler lütfen
 
Doğrudur.
Ben bilgisayar başındayken genellikle 3-5 Excel belgesi ve iki pencerede toplam 20 kadar internet sayfası hep açık olur.
Bu arada sayısı değişen adette txt belge açıktır, birkaç tane resim dosyası (ekran görüntüsü vb), sevdiğim eski bir program olan IrfanView üzerinden açıktır, Genellikle 2 adet de windows gezgini penceresi hep açıktır.

Asıl kötü bir huy olarak bilgisayar genellikle 7/24 açık. Arada bilgisayarı kapatıp açma huyum pek yok.

Sonuçta, işlemler standart sayılsa bile ben standart DEĞİLİM diyeyim.. ;)

.
 
Üst