• DİKKAT

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

Farklı dosyalardan veri almak

Katılım
10 Nisan 2006
Mesajlar
61
Selamlar; ne yaptıysam işin içinden çıkamadım, yardımcı olacak bi arkadaş olursa sevinirim.
Ekte yolladığım dosyada , döviz kurlarını ve kredi kartı satışlarını her gün için ayrı ayrı kaydedilmiş sayfaların aynı hücrelerinden güncellemem gerekiyor. formülü kopyalaığım da üsttekinin aynısı olduğundan hep aynı gün geliyor. tek tek formülün içine girip tarih değiştirmek zorundayım. ister "a" sütununa yazdığım tarihten alsın , istersede otomatik tarih atarak veri alsın. yardımcı olursanız sevinirim , şimdiden teşekkürler..
 

Ekli dosyalar

Selamlar,


Formül'deki "$" işareti hücreyi dondurmak için kullanılmıştır.

Örnek,


Kod:
=+'X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[15.03.2011.xls]BALANCE'!$G4


$G4 Hücresinin "$" işaretini hücre sayısını sabitleyen kısmını kaldırdım.

Aynı mantıkla diğerlerini yapabilirisiniz.
 
selamlar; ilginiz için teşekkürler. sanırım derdimi yanlış anlattım. $G4 hücresi sabit , değişmesi gereken kısım tarih kısmı. ben her hücreye girip sayfa adresindeki tarih kısmını değiştiriyorum. bunu otomatik yada formülle yapmak istiyorum. BALANCE 2011\BALANCE MARCH 2011\[15.03.2011.xls (bu kısımdaki 15/03/2011 her satırda otomatik artsın) yapmak isteyipde başaramadığım bu. yardımcı olabilirseniz sevinirim. saygılar.
 
vakit ayıracak bir arkadaş olursa sevinirim, gerçekten çok önemli. teşekkürler şimdiden
 
Selamlar,

Normal şartlarda DOLAYLI formülü kullanılarak istediğiniz işlem yapılabilir. Fakat DOLAYLI formülünün sonuç verebilrmesi için bağlantılı dosyaların tümünün açık olması gerekmektedir. Bu da çoklu bağlantılarda uygun bir kullanım şekli değildir. Ben size bunun yerine makrolu çözüm öneriyorum.

Dosya yolu belli olduğuna göre aşağıdaki kodu kullanabilirsiniz.

Kod:
Option Explicit
 
Sub FORMÜL_DÜZENLE()
    Dim X As Integer
    
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    
    For X = 2 To Range("A65536").End(3).Row
        Cells(X, "H").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$G$4"
        Cells(X, "I").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$H$4"
        Cells(X, "J").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$41"
    Next
    
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
    
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
selamlar, emeğiniz için teşekkürler. bir kaç sorum yada sorunum var cevaplayabilirseniz sevinirim.
macro uyguladığımda bazı hücrelerde hata verdi , kontrol ettim bazıları gerçekten boş, bazılarında ise f2 ile formüle girdiğimde bana hemen dosya soruyor. dosyayı bulamadığından hata veriyor diye düşündüm. buna bir çözüm bulabilirmiyiz ve o hücre gerçekten boşsa "HATA" yerine boş bırakabilirmi ?

veriyi alırken A sütüuna yazdığım tarihten mi aldı , formülü geliştirmek ve başka dosyalara uygulayabilmem açısından önemli. yada A sütununa yazdığım tarihten alabilir mi?

ben diğer sütunlar içinde aynı formülü yazdım , sadece veri alınan sabit hücreyi değiştirdim. formülü ekte yazdım. bir hata varsa yardımcı olurmusunuz.

emeğiniz için çok teşekkür ederim, işime gerçekten yaradı. çok sağolun.
Sub FORMÜL_DÜZENLE()
Dim X As Integer

Application.ScreenUpdating = False
Application.DisplayAlerts = False

For X = 2 To Range("A65536").End(3).Row
Cells(X, "H").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$G$4"
Cells(X, "I").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$H$4"
Cells(X, "J").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$41"
Cells(X, "B").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$52"
Cells(X, "C").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$53"
Cells(X, "D").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$54"
Cells(X, "E").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$55"
Next

Application.DisplayAlerts = True
Application.ScreenUpdating = True

MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Selamlar,

Hatanın sebebi ya klasörde ilgili dosya yoktur. Ya da dosya yolu hatalı olabilir.

Evet tarih bilgisi A sütunundan alınmaktadır. Cells(X, 1) ifadesindeki 1 değeri A sütununu ifade etmektedir.

Kullandğınız kodu aşağıdaki şekilde güncellerseniz bağalntılarda otomatik güncellenecektir. Bu şekilde sdece başvuru hatası veren dosyalarınızı açıp kontrollerinizi yapabilirsiniz.

Kod:
Option Explicit
 
Sub FORMÜL_DÜZENLE()
    Dim X As Integer, Link As Variant
    
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    
    For X = 2 To Range("A65536").End(3).Row
        Cells(X, "H").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$G$4"
        Cells(X, "I").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$H$4"
        Cells(X, "J").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$41"
        Cells(X, "B").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$52"
        Cells(X, "C").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$53"
        Cells(X, "D").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$54"
        Cells(X, "E").Formula = "='X:\CAGE\H.CAGE\-----------\BALANCE 2011\BALANCE MARCH 2011\[" & Cells(X, 1) & ".xls]BALANCE'!$M$55"
    Next
    
    On Error Resume Next
    For Each Link In ActiveWorkbook.LinkSources
        ActiveWorkbook.UpdateLink Name:=Link, Type:=xlExcelLinks
    Next
    On Error GoTo 0
    
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
    
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
excel 2003 ile 2007

bu tablo excel 97-2003 için hazırlanmıştı, 2007 versiyonlu excelde yaptığımda çalışmıyor. formülde nereyi düzeltmem gerektiği konusunda yardımcı olabilirmisiniz. teşekkürler
 
Geri
Üst