• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Kapalı Dosyada Veri Arama

  • Konbuyu başlatan Konbuyu başlatan ZuCChiNi
  • Başlangıç tarihi Başlangıç tarihi

ZuCChiNi

Altın Üye
Katılım
26 Haziran 2006
Mesajlar
267
Excel Vers. ve Dili
Excel 2016, TR, x32
Yaklaşık 2 yıl önce bir konuda yardım istemiştim. Sağolsun sayın @Korhan Ayhan'ın yardımı ile o konuyu halletmiştim.
Geçenlerde bu dosyayı farklı bir şekilde kullanmak istedim. Verileri ayrı bir dosyaya aldığımda sorgulama sonucunda karşıma hep #DEĞER! sonuçları çıktı. Forumda yaptığım aramada kapalı dosyalarla ilgili pek çok uygulama gördüm. Ama benim aradığm şekilde bulamadım. Tekrar yardımlarınızı rica ediyorum.

Elimde numaralandırılmış çok sayıda sandık ve koli var.
Bu sandıklarda meyve, kolilerde sebze var.
Her bir sandık ve koli birbiri ile ilişkili. 1 nolu sandık ve 1 nolu koli aynı parti.

Elimde hangi sandıkta ne olduğuna dair bir de liste var.
Sandık/Koli numarasını yazdığımda o numaralı sandık ve kolide ne olduğunu alt alta dökmem gerekiyor.
Yani 10 yazdığımda 10 nolu sandık ve 10 nolu kolidekileri görmem gerekiyor.

Yapmak isteyip da yapamadığım, sorguyu Data dosyasındaki sheetlerden yapması. Data dosyasını açarsam sorun yok ama bu dosya çok büyük olduğu için her zaman açamıyorum. Bu yüzden bu dosyayı açmadan sorgulama yapmak istiyorum

Örnek dosya ektedir.
 

Ekli dosyalar

Son düzenleme:
Merhaba
Dosya arka planda açılsa problem olur mu_? Kendi açılıp işlemi yaptıktan sonra kapanacak. İçinde formül veya makro yoksa kasma yapmaz diye düşünüyorum.
Hiç açılmasın derseniz sitede ADODb şeklinde arama yapın.
Bir diğer çözüm ise Excel4Makro bunu da yazdığımızda tüm kitabı döngüye alacağımız için işleminiz oldukça fazla uzayacaktır.
 
Merhaba
Dosya arka planda açılsa problem olur mu_? Kendi açılıp işlemi yaptıktan sonra kapanacak. İçinde formül veya makro yoksa kasma yapmaz diye düşünüyorum.
Hiç açılmasın derseniz sitede ADODb şeklinde arama yapın.
Bir diğer çözüm ise Excel4Makro bunu da yazdığımızda tüm kitabı döngüye alacağımız için işleminiz oldukça fazla uzayacaktır.

Dosyanın arka planda açılmamasını tercih ederim.
Çünkü bu çalışmayı büyük boyutlu bir-kaç excel dosyasını veritabanı olarak kullanarak geliştireceğim.
Sitede arama yaptım, ancak bulduklarım hep kapalı dosyaya yazmak, veri çekmek türünden.
Benim örnekteki gibi bir örnek bulamadım maalesef.
 
Örnekteki Data dosyasının aslında şimdilik 1000 kadar kayıt var.
Her kayıt 20 sütundan oluşuyor.
 
Örnekteki Data dosyasının aslında şimdilik 1000 kadar kayıt var.
Her kayıt 20 sütundan oluşuyor.

Sanırım anlatamadım. Ne kadar kayıt olur maksimum tamamında sonuçta excel4makro ile yapacağım ve bunu da satır sayısı kadar döngüye alacağım ne kadar kasar onun için soruyorum.
 
Kayıtlar günlük değişiyor. Günde 2-3 kayıt oluyor. Silinme olmuyor.
Şimdilik 1000 kayıt için yapabilirseniz.
Ne kadar kasacak görelim.
 
Yaklaşık 2 yıl önce bir konuda yardım istemiştim. Sağolsun sayın @Korhan Ayhan'ın yardımı ile o konuyu halletmiştim.
Geçenlerde bu dosyayı farklı bir şekilde kullanmak istedim. Verileri ayrı bir dosyaya aldığımda sorgulama sonucunda karşıma hep #DEĞER! sonuçları çıktı. Forumda yaptığım aramada kapalı dosyalarla ilgili pek çok uygulama gördüm. Ama benim aradığm şekilde bulamadım. Tekrar yardımlarınızı rica ediyorum.

Elimde numaralandırılmış çok sayıda sandık ve koli var.
Bu sandıklarda meyve, kolilerde sebze var.
Her bir sandık ve koli birbiri ile ilişkili. 1 nolu sandık ve 1 nolu koli aynı parti.

Elimde hangi sandıkta ne olduğuna dair bir de liste var.
Sandık/Koli numarasını yazdığımda o numaralı sandık ve kolide ne olduğunu alt alta dökmem gerekiyor.
Yani 10 yazdığımda 10 nolu sandık ve 10 nolu kolidekileri görmem gerekiyor.

Yapmak isteyip da yapamadığım, sorguyu Data dosyasındaki sheetlerden yapması. Data dosyasını açarsam sorun yok ama bu dosya çok büyük olduğu için her zaman açamıyorum. Bu yüzden bu dosyayı açmadan sorgulama yapmak istiyorum

Örnek dosya ektedir.

.

Bu tarz istiyorsanız, daha dinamik bir çalışma yapılabilirim.


.
 

Ekli dosyalar

.

Bu tarz istiyorsanız, daha dinamik bir çalışma yapılabilirim.


.

Bu şekilde de olabilir.
Excel dosyasında ilgili sayfadaki görünümü ve yazdırma sonrası çıktısı önemli.
Şu anda yazıcım olmadığı için deneme yapamıyorum. Ancak yarın deneyebilirim.
Ancak zahmet olmayacaksa bir çalışma yaparsanız sevinirim.
Eğer isteğimi karşılarsa başkalarını da yormamış olurum.
 
Bu şekilde de olabilir.
Excel dosyasında ilgili sayfadaki görünümü ve yazdırma sonrası çıktısı önemli.
Şu anda yazıcım olmadığı için deneme yapamıyorum. Ancak yarın deneyebilirim.
Ancak zahmet olmayacaksa bir çalışma yaparsanız sevinirim.
Eğer isteğimi karşılarsa başkalarını da yormamış olurum.

.,


Örnek dosya ekte.

Data dosyasına istediğiniz kadar veri girin. Kaydedip kapatın. Sonra sorgu dosyasını açın ve herhangi bir yerde çift tıklayın.

Olmuşsa ve nasıl yapıldığını anlamdıysanız anlatmaya çalışırım.

.
 

Ekli dosyalar

Güzel bir çalışma olmuş. Yarın işyerinde deneyeceğim.
Teşekkür ederim.
Yalnız Sandık ve Koli'nin sorguları aynı omlaı.
Yani 11 değerini girdiğimde hem Sandığı, hem Koliyi listelemeli.
Bunun pivot tablo olduğunu biliyorum ama nasıl yapıldığını bilmiyorum. :)
 
Merhaba
Sorgu kitabında boş bir module ekleyin ve deneyin.
Not : 2007 ( .xlsm ) de denedim. Problemsiz çalıştı. Dosyalar 2003 olduğu için bir fikir yürütemiyorum.
Kod:
Option Explicit
Sub veri_çek()
Dim YL As String, KTP As String, KL As Long
Dim STR As Long, BRL As String, SND As Long
YL = [COLOR="Red"]ThisWorkbook.Path & "\"[/COLOR]
KTP = "Data.xls"
BRL = "'" & YL & "[" & KTP & "]"
Application.ScreenUpdating = False
Range("B10:F19").ClearContents
Range("B24:G33").ClearContents
With Application
SND = 10
For STR = 2 To .ExecuteExcel4Macro("COUNTA(" & BRL & "Sandık'!C1)")
If .ExecuteExcel4Macro(BRL & "Sandık'!R" & STR & "C1") = Range("B2") Then
Cells(SND, "B") = .ExecuteExcel4Macro(BRL & "Sandık'!R" & STR & "C2")
Cells(SND, "C") = .ExecuteExcel4Macro(BRL & "Sandık'!R" & STR & "C3")
Cells(SND, "D") = .ExecuteExcel4Macro(BRL & "Sandık'!R" & STR & "C4")
Cells(SND, "E") = .ExecuteExcel4Macro(BRL & "Sandık'!R" & STR & "C5")
Cells(SND, "F") = .ExecuteExcel4Macro(BRL & "Sandık'!R" & STR & "C6")
SND = SND + 1
End If: Next
KL = 24
For STR = 2 To .ExecuteExcel4Macro("COUNTA(" & BRL & "Koli'!C1)")
If .ExecuteExcel4Macro(BRL & "Koli'!R" & STR & "C1") = Range("B2") Then
Cells(KL, "B") = .ExecuteExcel4Macro(BRL & "Koli'!R" & STR & "C2")
Cells(KL, "C") = .ExecuteExcel4Macro(BRL & "Koli'!R" & STR & "C3")
Cells(KL, "D") = .ExecuteExcel4Macro(BRL & "Koli'!R" & STR & "C4")
Cells(KL, "E") = .ExecuteExcel4Macro(BRL & "Koli'!R" & STR & "C5")
Cells(KL, "F") = .ExecuteExcel4Macro(BRL & "Koli'!R" & STR & "C6")
Cells(KL, "G") = .ExecuteExcel4Macro(BRL & "Koli'!R" & STR & "C7")
KL = KL + 1
End If: Next
End With
Application.ScreenUpdating = True
MsgBox "İşlem Tamamlandı", vbInformation
End Sub
Kırmızıya boyadığım yere Yol bilgisini yazınız. "D:\" şeklinde
 
Dosyayı inceleyin.
Sorgu.xlsm dosyasında kod. Butonda mevcut.

Çok güzel olmuş. Teşekkür ederim.
Listenin altına biraz daha örnek girdim. Sorunsuz çalıştı.
Benim için tek kullanışsız yanı numarayı girip butona tıklamak.
Bu şekilde kullanmaya alışmam gerekecek.

@yurttas ve @asi_kral_1967, ikinize de ayrı ayrı teşekkür ederim.
 
Çok güzel olmuş. Teşekkür ederim.
Listenin altına biraz daha örnek girdim. Sorunsuz çalıştı.
Benim için tek kullanışsız yanı numarayı girip butona tıklamak.
Bu şekilde kullanmaya alışmam gerekecek.

@yurttas ve @asi_kral_1967, ikinize de ayrı ayrı teşekkür ederim.

Hayır alışmanıza gerek yok. Ben onu deneyin diye yapmıştım. :)
Eki inceleyin. B2'ye yazdığınız veriye göre çalışır.
 

Ekli dosyalar

Çok güzel olmuş. Teşekkür ederim.
Listenin altına biraz daha örnek girdim. Sorunsuz çalıştı.
Benim için tek kullanışsız yanı numarayı girip butona tıklamak.
Bu şekilde kullanmaya alışmam gerekecek.

@yurttas ve @asi_kral_1967, ikinize de ayrı ayrı teşekkür ederim.
.


Dosyayı yukarıda güncelledim.

Birinci pivottan seçtğiniz, 2. pivottada aynı seçenek olacaktır.

.
 
Dosyayı yukarıda güncelledim.

Birinci pivottan seçtğiniz, 2. pivottada aynı seçenek olacaktır.

Bu daha kullanışlı olmuş.
Tekrar çok teşekkür ederim.
 
Geri
Üst