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

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

  • 1607166770662.webp
    1607166770662.webp
    149.2 KB · Görüntüleme: 81
  • 1607166866138.webp
    1607166866138.webp
    130.9 KB · Görüntüleme: 75
  • 1607166943720.webp
    1607166943720.webp
    144.5 KB · Görüntüleme: 74
O şekilde değil. İlk mesajımda belirttiğim gibi excel sayfasına hiç veri alınmayacak, makro ile diziye aldırılıp dizi üzerinde işlem yapılırsa çok hızlı olacaktır.
Ufak bir log dosyası paylaşır hangi verileri istediğinizi belirtirseniz üzerinde çalışılabilir.
 
Sn. Ömer Bey istediğim log dosyası içerisinde stop loss #**** şeklinde değerler var. Ve open buy #****, open sell #**** şeklinde değerler var.
Örneğin Stop loss #189 değeri var. Buy #189 ya da sell #189 değeri varsa bunları buy ve sell sayfalarına aktaracak. Aktaralıcak kısım ise buy-sel ile başlayıp modify dahil olan kısım.Ekli dosyayı görüntüle 7042
Umarım anlatabilmişimdir.
 

Ekli dosyalar

  • log.rar
    log.rar
    1.3 MB · Görüntüleme: 5
  • 1607171645684.webp
    1607171645684.webp
    216.1 KB · Görüntüleme: 7
  • 1607171832366.webp
    1607171832366.webp
    69.1 KB · Görüntüleme: 56
Merhabalar Sayın @Tukayf .

Bir süre forumla çok ilgilenememiştim.
Konuyu gördüm, bir kodlama da hazırlamıştım ama gönderme fırsatım olmamıştı.

Ekteki belgede bir uygulama mevcut olup, deneyip, sonuçlarını yazarsınız.
Geri bildirim olarak özellikle işlem süresiyle ilgili bilgi verirseniz sevinirim.

Belgede kullanılan kodlar aşağıda gösterilmiştir.

İyi çlışmalar dilerim.

CSS:
You must log in to view content
(60 satır)

.
 

Ekli dosyalar

Birinci öncelik DOĞRULUK . Sonuç doğru mudur?
Bulduğunuz çözümün süresini de iletir misiniz?
Ben eklediğiniz belgedeki sorguyu çalıştıramadım, SQL işinden de anlamadığım için bakamadım.

.
 
Hocam sonuçlar doğru ondan yana sıkıntı yok. Süre de gayet makul bir süre.
Power Query çözümünde ise log dosyası, log klasöre içerisinde olacak ve resimde görülen hücreye yolu yazıldıktan sonra Veri>>Tümünü yenile dedikten sonra sorgu çalışıyor. Ekli dosyayı görüntüle 7062
 

Ekli dosyalar

  • 1607265738871.webp
    1607265738871.webp
    47.7 KB · Görüntüleme: 46
Yazdığım gibi, SQL ile ilgili bilgim yok. Ben sonuç alamadım malesef.
A2'ye log dosyasının yolunu (excel belgesi de aynı yerde zaten) yazdım.
Ancak güncelle deyince sırayla aşağıdaki durumla karşılaştım.

PowerQuery işlem süresi nedir?
Verdiğim kodla, 339.000 satırlık veri üzerinden 20 saniye civarında sonuç alınması heç fena değil galiba.
.

Ekli dosyayı görüntüle 7071
 

Ekli dosyalar

  • 1607266744272.webp
    1607266744272.webp
    21.8 KB · Görüntüleme: 44
Tekrardan merhabalar hocam. Süre olarak çok iyi manuel olarak günler alıyordu bu işlem ve insanı bıktırıyordu.
Sizde hata verme sebebi emin olmamakla birlikte sanırım 2013 versiyonu power query i desteklemiyor. Çünkü 2016 ve 2019 sürümlerinde çalışıyor. Tekrardan teşekkürler.
 
Tekrardan merhabalar. Sn. Hocam yine aynı konuda yardımınıza ihtiyacım var. Önceki cevabınızla çözmeye çalıştım ancak yapamadım. Yine text (log) dosyasından buy ve sell sayfalarına veri aktarmak istiyorum.

0 01:48:42.637 2021.01.06 01:00:00 Mum Stratejiler EURUSD,H1: Strategy:1182212 Win/Loss:86.6667 PnL:15 BUY (x==18 && y==22 && z==12)||
0 01:48:42.876 2021.01.06 01:00:00 Mum Stratejiler EURUSD,H1: Strategy:2132512 Win/Loss:86.6667 PnL:15 SELL (x1==13 && y1==25 && z1==12)|| şeklinde satırlar var ben bu satırdaki kalın yazıyla olan kısımlarını buy ve sel sayfalarına aktarmak istiyorum. Buy (x== ile başlıyor sell ise (x1== ile başlıyor.
 

Ekli dosyalar

Tekrar merhaba Sayın @Tukayf .

Önceki dosyadaki yapıya göre aşağıdaki kodu,
-- sayfadaki düğmeyle ilişkilendirerek veya
-- yeni bir düğme/şekil ekleyip bununla ilişkilendirerek
çalıştırın.

VBA:
You must log in to view content
(39 satır)
 
Hocam yanıt için çok teşekkürler. Log da satır sayısı çok fazla 5 milyon civarı bunu belirtmeyi unutmuşum inşallah sorunsuz çalışır. PC başına geçer geçmez dönüş yapacağım. Selamlar
 
Son isteğiniz diğerinden çok farklı.
Aslında FİLTER özelliği de kullanılabilirdi ama levcut kodda değişiklik yaparak bu hale getirdim.
Eski koddaki ana çatıyı değiştirmek istemedim.
 
Hocam çok teşekkürler. Ancak şöyle bir sıkıntı çıktı. Buy sayfasında verilerin bir kısmını
#YOK olarak getiriyor. Sanırım dosya boyutunun büyüklüğünden kaynaklı normal bir dosyada anında işlem yapıyor. Kodlar çok hızlı.​
 
Bir kısmını derken aralarda satırlar mı yoksa son kısım mı?
Son kısım ise kaçıncı satırdan itibaren bu durum oluşuyor?

Veri miktarını buna göre elle çoğaltıp (büyük veri iletebilirsiniz bununla uğraşmış da olmam) denemek için soruyorum.
 
Konuyu başlatan
Normal Üye
Katılım
Konu Bilgi
Durum
Çözüldü 
Forum
Excel Makro Soruları
Başlangıç tarihi
Son yanıt tarihi
Cevaplar
37
Üst