KAPALI EXCEL DOSYALARINDAN KOŞULLARA UYAN VERİLERİ ALMAK

Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
KAPALI EXCEL DOSYALARINDAN KOÞULLARA UYAN VERÝLERÝ ALMAK

SELAM ARKADAÞLAR. İNTERNETTEN İNDİRİLMİÞ BENİM İÇİN Ã?RNEK BİR DOSYADA TEST() ADINDA BİR MAKRO YAPILMIÞ BU MAKROYU ÇALIÞTIRDIÐIMDA "C:\Temp\" ADINDAKİ DİZİNDE TÜM EXCEL DOSYALARINDA "PUANTAJ" SAYFA İSMİ OLAN KAPALI DOSYALARDAN VERİ ALMAK MÜMKÜN. BENİM İSTEDİÐİME BİRAZ YAKIN.
BENİM İSTEDİÐİM ÞU;
AYLIK PUANTAJLAR AYNI DİZİNDE BULUNMAKTADIR.Ã?RNEÐİN(OCAK.XLS, ÞUBAT.XLS ÞEKLİNDE) OCAK AYINDAN BAÞLAYARAK PUANTAJ GİRİLİR. AMAÇ PERSONELİN HERHANGİ BİR SİPARİÞ NUMARASINA ÇALIÞTIÐI SAATİ HESAPLAMAK. EKTE GÃ?NDERECEÐİM EXCEL DOSYASINDA Kİ TEST() MAKROSUNU ÞUNLARI YAPACAK ÞEKİLDE DERLEYEBİLİRSENİZ SİZLERE MİNNNETTAR KALIRIM;
AKTİF ÇALIÞTIÐIM SAYFA DA ADAHİL, TÜM KAPALI EXCEL DOSYALARINDAKİ BENİM BELİRLEDİÐİM SİPARİÞ NUMARASINA TOPLAM ÇALIÞILAN ZAMANI TOPLAYARAK MESAJ ÞEKLİNDE BANA BİLDİRMESİ.
SİPARİÞ NUMARASI [A] SÜTÜNÜN DA, ÇALIÞILAN ZAMAN SAAT OLARAK SÜTÜNÜN DA BULUNMAKTADIR. BU SÜTUNLAR VE SAYFA İSİMLERİ TÜM AYLIK PUANTAJLAR İÇN AYNIDIR.
ARKADAÞLAR ÞİMDİDEN ÇOK TEÞEKKÜR EDİYORUM. :dua:
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Aşağıdaki kodu deneyin.

Kod:
Sub verial()
sor = InputBox("SİPARİÞ NOSUNU GİRİNİZ")
If sor = "" Then Exit Sub
For Each dosya In CreateObject("Scripting.FileSystemObject").GetFolder("C:\Temp").Files
For a = 2 To 65536
hucre = ExecuteExcel4Macro("'C:\Temp\[" & dosya.Name & "]PUANTAJ'!R" & a & "C1")
If hucre = 0 Then GoTo 10
If hucre = sor Then
hucre1 = ExecuteExcel4Macro("'C:\Temp\[" & dosya.Name & "]PUANTAJ'!R" & a & "C2")
toplam = hucre1 + toplam
GoTo 10
End If
Next
10 Next
MsgBox toplam
End Sub
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
Sn Levent bey Ã?ncelikle çok teşekkür ederim elleriniz dert görmesin. Çok harika olmuş. fakat ben eksik anlatttım galiba.
sor = InputBox("SİPARİÞ NOSUNU GİRİNİZ") buraya girilen sipariş numarasından her puantaj için birer sipariş numarasının saatini toplamakta. Sözkonusu sipariş numarasından birden fazla olabilir. Dolayısıyla inputbox' a gidiğim sipariş numarısını tüm satırlarda arayıp saatlerini toplaması gerekmektedir. Fakat sizin yaptığınız makroyu incelediğimde mantık olarak zaten bunu yapması gerekiyor galiba. Ben buna pek anlam veremedim doğrusu. Gerçi ben makroları pek fazla bimem ama anladığım kadarıyla tüm kayıtları görmesi gerekliydi. Tekrar yardımlarınızı esirgemediğiniz için çok teşekkür ederim.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Kod içindeki kırmızı ile gösterilen goto 10 satırını kaldırın.

[vb:1:4b83859b38]toplam = hucre1 + toplam
GoTo 10
[/vb:1:4b83859b38]

Not:Eğer veri sayınız çok fazla ise kodun çalışması uzun sürebilir, kilitlendi olarak düşünmeyin.
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
leventm, LEVENT BEY ALLAH SİZDEN RAZI OLSUN. TEK KELİME İLE HARİKA. BİRDE BU KONU İLE İLGİLİ BİLGİ AMAÇLI BİR SORU SORSAM UMARIM SİZİ SIKMAM. BU Ã?RNEÃİ BAÞKA DOSYALARIMDA DA KULLANMAK GEREKTİÐİNDE ARAMA SÜTUNUNU [A] VE SONUÇ SÜTUNUNU DA YERİNE BAÞKA DEÐERLER ATAMAM İÇİN HANGİ SATIRI DEÐİÞTİRMEM GEREKİR ACABA?
MESELA;
hucre = ExecuteExcel4Macro("'C:\Temp\[" & dosya.Name & "]PUANTAJ'!R" & a & "C1")
hucre1 = ExecuteExcel4Macro("'C:\Temp\[" & dosya.Name & "]PUANTAJ'!R" & a & "C2")

ÜSTTEKİ İKİ SATIRDAKİ ÃžU DEÐERLERİ = "C1") VE "C1") DEÐİÞTİRDİÐİMDE SÜTUN ADRESLERİNİ DE DEÐİÞTİRMİÞ OLURUM DEÐİL Mİ?
TEKRAR TEKRAR TEÞEKKÜR EDİYORUM. KENDİNİZE İYİ BAKIN. :hey:
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Yukarıda verdiğiniz satırlardaki "C" harfi kolonu, yanındaki harfte kolon nosunu ifade etmektedir. "C1" 1.kolon yani A kolonu, "C2" 2.kolon yani B kolonudur.
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
leventm, Levent bey çok sağolun ilginiz ve yardımlarınız için. Elleriniz dert görmesin. Levent bey bir şey daha sorsam? Çok olduğumu biliyorum ama;
Yaptığınız bu makro eğer zor olmaz ise fonksiyona (Function) çevrilebilirmi?
Bu makro benim diğer işlerimde de kullanacağım için function da gerekli.
 
Katılım
17 Haziran 2005
Mesajlar
63
Excel Vers. ve Dili
Excel 2003 Türkçe
selam

Leven bey dosyayı göderiyorum ve içerisinde açıklamayı da. Bir incelerseniz çok sevinirim.
 
Katılım
20 Mart 2008
Mesajlar
4
Excel Vers. ve Dili
türkçe 2003
Merhabalar yapmış olduğunuz örnek çok güzel
Benim şu şekilde bir tablom var ve sorgu girdiğim değerlere göre kapalı bir çalışma kitabının sayfa2 sindeki bilgileri nasıl listelerim. şimdiden teşekkürler

Sorgulama kriterleri şöyledir

AY_KODU FISNO
7 97
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
Bu koda bir örnek çalışma eklense ne kadar iyi olurdu !!
 

baydeniro

Altın Üye
Katılım
26 Ocak 2007
Mesajlar
4,625
Excel Vers. ve Dili
Ofis 2016
Altın Üyelik Bitiş Tarihi
20-02-2025
İlginize çok çok teşekkür ederim sayın mehmetemintatli.
 
Üst