• DİKKAT

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

kapalı dosyalardan veri alma

Katılım
9 Ocak 2011
Mesajlar
88
Excel Vers. ve Dili
2007 türkçe
ekteki dosyada açıklamaya çalıstığım bir çalışma yapmak istiyorum. yardımcı olursanız sevinirim üstadlarım. şimdden tesekkurler.
 

Ekli dosyalar

bu dosyalardan verileri alırken açsa sonra kapatsa bunları otomatik yapsa işinizi görür mü_?
işinizi görürse bir sorun olacak diğer kitaplardaki A - B sütunlarına başka veride girecek misiniz.
 
ihsan bey ,

bu klasorun ıcınde belkı 30 belkıde 130 degısık ısmde dosyalar olacagı için bunların acılması saglıklı olmaz.
evet a ve b sutunlarının devamında baska verıler olacak. ama sadece bu iki hucreden verı alacak.
 
ihsan bey ,

bu klasorun ıcınde belkı 30 belkıde 130 degısık ısmde dosyalar olacagı için bunların acılması saglıklı olmaz.
evet a ve b sutunlarının devamında baska verıler olacak. ama sadece bu iki hucreden verı alacak.

peki siz bu dosya adlarını excel'e yazacak mısınız_?
yazacaksanız bir problem olmayacaktır. siz son olarak bu bilgi verirseniz bende elimden geldiğince yardım ederim.
 
ihsan bey bu kadar gec yazdıgım için özür dilerim. girmek için ancak vaktim oldu.

dosyaların ismini yazmayacagım. dun gece dosyayı yukledıkten sonra soyle dusundum.
altalta toplamasına gerek yok.
yani dosyaların tumundekı A1 hücresındekı verılerı toplayarak göstersın B1 hucrelerındekılerıde toplayarak gosterssın yeterlı olacak. bana gereklı olan sadece A1 ve B1 lerin toplam tutarları ve arasındaki yüzde farkı olacak. diğerleri gereksiz.

yani veri toplama dosyası sadece bu iki hücredeki sayıları toplasın yeterlıdır.

ilginiz için çok tesekkur ederım.
 
ihsan bey bu kadar gec yazdıgım için özür dilerim. girmek için ancak vaktim oldu.

dosyaların ismini yazmayacagım. dun gece dosyayı yukledıkten sonra soyle dusundum.
altalta toplamasına gerek yok.
yani dosyaların tumundekı A1 hücresındekı verılerı toplayarak göstersın B1 hucrelerındekılerıde toplayarak gosterssın yeterlı olacak. bana gereklı olan sadece A1 ve B1 lerin toplam tutarları ve arasındaki yüzde farkı olacak. diğerleri gereksiz.

yani veri toplama dosyası sadece bu iki hücredeki sayıları toplasın yeterlıdır.

ilginiz için çok tesekkur ederım.

sanırım anlatamadım.
siz dosyanıza kitabların isimlerini yazarak bu yazdığınız kitapların toplamını istemiyor musunuz. dün dosyanıza baktığım da ben bunu anlamıştım. sanırım yanlış anladım. gerçekten yanlış anladı isem o zaman bu yöntem işe yaramaz
 
dosyayı yenıledım

ihsan bey,

dün alt alta A1 ve B1 verilerini toplasın demiştim ama bunu gereksiz gördüğüm ve uzun bir iş olacagını düşündüğüm için vazgectim. ekteki dosyada belırttıgım gibi sadece bu hücrelerdeki sayıların toplamı benim işimi görüyor.

AMA siz ben bunu bildiğim şekilde halledeyim diyorsanız onada varım.
sonucta bana bu kalsör içindeki tüm dosyaların A1 ve B1 hücrelerindeki toplamları gerekiyor. bunu siz kendi yönteminizlede yapsanız kabulumdur. yeterki toplamları alayım.
çok tesekkur ederım.
 

Ekli dosyalar

ihsan bey,

dün alt alta A1 ve B1 verilerini toplasın demiştim ama bunu gereksiz gördüğüm ve uzun bir iş olacagını düşündüğüm için vazgectim. ekteki dosyada belırttıgım gibi sadece bu hücrelerdeki sayıların toplamı benim işimi görüyor.

AMA siz ben bunu bildiğim şekilde halledeyim diyorsanız onada varım.
sonucta bana bu kalsör içindeki tüm dosyaların A1 ve B1 hücrelerindeki toplamları gerekiyor. bunu siz kendi yönteminizlede yapsanız kabulumdur. yeterki toplamları alayım.
çok tesekkur ederım.

merhaba
Sayfa2'yi yardımcı olarak kullanarak bir çözüm ürettim.
veri toplama dosyasını makro uzantılı hale getirin. ve bu kodu boş bir module kopyalayarak deneyin.
Kod:
Option Explicit
Sub çek_Allah_çek()
Dim ts, kaplan, trabzonspor, bordo, mavi
ts = MsgBox("SayfalarıTopluyorum", vbYesNo, "Onay")
If ts = vbNo Then Exit Sub
Application.ScreenUpdating = False
bordo = 1
Set ts = CreateObject("Scripting.FileSystemObject")
For Each kaplan In ts.Getfolder(ThisWorkbook.Path).Files
Sheets("Sayfa2").Cells(bordo, "A") = Replace(kaplan.Name, ".xlsx", "")
bordo = bordo + 1
Next
For trabzonspor = 1 To Sheets("Sayfa2").Cells(65536, "A").End(xlUp).Row
If Right(Sheets("Sayfa2").Cells(trabzonspor, "A"), 5) = ".xlsm" Then
Sheets("Sayfa2").Cells(trabzonspor, "A") = ""
End If
Next
bordo = "veri toplama dosyası.xlsm"
For mavi = 1 To Workbooks(bordo).Sheets("Sayfa2").Cells(65536, "A").End(xlUp).Row
ts = ThisWorkbook.Path & "\"
bordo = "veri toplama dosyası.xlsm"
kaplan = Sheets("Sayfa2").Cells(mavi, "A") & ".xlsx"
Workbooks.Open (ts & kaplan)
Workbooks(bordo).Sheets("Sayfa2").Cells(mavi, "B") = _
WorksheetFunction.Sum(Workbooks(kaplan).Sheets("Sayfa1").Range("A:A"))
Workbooks(bordo).Sheets("Sayfa2").Cells(mavi, "C") = _
WorksheetFunction.Sum(Workbooks(kaplan).Sheets("Sayfa1").Range("B:B"))
Workbooks(kaplan).Close
Next
Sheets("Sayfa1").Range("H5") = WorksheetFunction.Sum(Sheets _
("Sayfa2").Range("B:B"))
Sheets("Sayfa1").Range("I5") = WorksheetFunction.Sum(Sheets _
("Sayfa2").Range("C:C"))
Sheets("Sayfa1").Range("H12") = Sheets("Sayfa1").Range("H5") / _
Sheets("Sayfa1").Range("I5")
Sheets("Sayfa2").Range("A:C").ClearContents
Application.ScreenUpdating = True
MsgBox "Sayfaları Topladım", vbInformation, "Bitiş"
End Sub
 
Dim ts, kaplan, trabzonspor, bordo, mavi

buradakiler dosya isimlerimidir. ihsan bey
 
ihsan bey,

veri toplama dosyasındaki butona atadım fakat complie error sözdizimi hatası diyor.
sizden ricam dosya üstünde uygulayabilirmisiniz.
 
Dim ts, kaplan, trabzonspor, bordo, mavi

buradakiler dosya isimlerimidir. ihsan bey

hayır bunlar değişkenlerdir.

ihsan bey,

veri toplama dosyasındaki butona atadım fakat complie error sözdizimi hatası diyor.
sizden ricam dosya üstünde uygulayabilirmisiniz.

nasıl olur ben denedim daha güzel çalışıyordu hata vermiyordu
eki inceleyin. bende buton'a atadım gayet güzel verileri alıyordu :)
 

Ekli dosyalar

c:\users\......\Dekstop\kapalıdosya\.xlsx bulunamadı diyor.

vba da burayı işaretliyor.
Workbooks.Open (ts & kaplan)

sizin bana gönderdiğiniz dosyaya tıkladığımda :(
 
tmm olduuuu :)

çok çok tesekkur ederim ellerinize beyninize saglık . çok tesekkurler ihsan bey,
 
ihsan bey,

ben bu klasörün içinde farklı kaydet makrosuyla dosya atıyorum buda tek sayfa olarak kaydediliyor. sizin makronuz sayfa 2 den faydalanıyor dediniz. benim dosyalarımda sayfa 2 yok .
hata veriyor.
 
ihsan bey yukarıdaki problemi çözdüm. ama esas baska bir problem varmıs onu tesbit ettim tesadüfen. aşagıdaki sayılar A1 hücrelerinde olan 3 ayrı dosyanın verileri normalde bunların toplamını 76,16 toplaması gerekirken 79,16 olarak topluyor. bunu neden yapar acaba
10,00
10,00
56,16
76,16 yerine 79,16 topluyor.
 
ihsan bey yukarıdaki problemi çözdüm. ama esas baska bir problem varmıs onu tesbit ettim tesadüfen. aşagıdaki sayılar A1 hücrelerinde olan 3 ayrı dosyanın verileri normalde bunların toplamını 76,16 toplaması gerekirken 79,16 olarak topluyor. bunu neden yapar acaba
10,00
10,00
56,16
76,16 yerine 79,16 topluyor.

ben elimdeki örnekte denedim şimdi böyle bir problem yok dosyanızı ekleyebilir misiniz_?
 
ihsan bey ,
bana ne deseniz az yani vallahi

a1 sutununu tek tek aradım en sonunda 3 rakamı yazılı bir hucre buldum onunla bırlıkte topluyormus ve hücre rengi beyaz oldugu için sayı gözükmüyor. en sonunda düzelttim . çok tesekkür ederim . ellerinizee sağlık ihsan bey...
 
ihsan bey ,
bana ne deseniz az yani vallahi

a1 sutununu tek tek aradım en sonunda 3 rakamı yazılı bir hucre buldum onunla bırlıkte topluyormus ve hücre rengi beyaz oldugu için sayı gözükmüyor. en sonunda düzelttim . çok tesekkür ederim . ellerinizee sağlık ihsan bey...

rica ederim
lütfen büyük harf yazmayın form kurallarına uyun
:yazici:
 
Geri
Üst