Text Veri Alma ve Kritere Göre Sayfalara Aktarma

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

Kısa Açıklama

Text Veri Alma ve Kritere Göre Sayfalara Aktarma isimli başlıkta, ilgili işlemlere dair detaylar yer almaktadır.
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 iki satır arası veri alma isimli 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.

Biz bu metin belgesini excele aldıktan sonra öncelikle içerisinde -stop loss #****- şeklinde olan verileri filtreleyip metni sütunlara dönüştürdükten sonra sadece oradaki rakamları alıyoruz.

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.

Bu işlemden sonra Sn Ömer BARAN'ın kodları ile
VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(9 satır)
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.

1607166704017.webp

1607166770662.webp

1607166866138.webp

1607166943720.webp
 
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.

1612614737935.webp
 
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)
 
Çözüm
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.. ;)

.
 
Benzer Konular Popüler İçerikler Daha Fazlası
Geri
Üst