Sayfalara Veri Aktarımı

Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Merhabalar ekteki dosyamda günlük işledigim kasa defterim vardır. Tarih olan sayfalara veri işliyorum. Şube ismi olan ankara mesela oraya işlediğim veri direk aktarıyor. Ben hücrede yada sutun eklediğimde baştan değiştirmem gerekiyor bütun şube sayfalarını. Daha iyi şekilde nasıl yapabilirim formül yada makro ile çözümü varmıdır teşekkür ederim
 

Ekli dosyalar

Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Ustalarımdan yardım bekliyorum sizlere zahmet
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,235
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sütun ya da satır eklenebilen yapılarda fonksiyonla çözüme gitmek daha akıllıca olacaktır.

Ben satır ve sütun kesişimli tablolarda genellikle İNDİS+KAÇINCI fonksiyonlarını kullanarak sonuca gidiyorum. Burada ki tek sıkıntı yeni eklenen verinin tespitidir. Eğer ben üşenmem yeni eklediğim veriyi formül yazdığım sayfayada eklerim diyorsanız önerdiğim fonksiyonları deneyebilirsiniz. Yok ben bunlarla uğraşamam derseniz bu durumda dinamik çalışabilen ÖZET TABLO (PIVOT TABLE) kullanmanızı kesinlikle tavsiye ederim. Tabi bunu kullanabilmeniz için veri girişlerinizi VERİ TABANI formunda yapmanız gerekecektir.
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Merhaba hocam indisli örnegini paylaşabilirmisiniz size zahmet
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
='01.01.2021'!D3 ='02.01.2021'!D3 ='03.01.2021'!D3 sayfalardan alıyorum bu şekilde yapıyorum bunu tek tek hücrelere yazıyorum
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,235
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sayfa isimleriniz tarih olduğu için formülü uzatmak zorunda kaldım.

Tarih olan sayfalarda tablo yapısını A:Z sütun aralığı olarak baz aldım. Sizin ihtiyacınız daha geniş bir aralıksa formülde değiştirirsiniz.

KIZILAY sayfası B2 hücresine uygulayıp sağa ve alta doğru sürükleyiniz.

C++:
=İNDİS(DOLAYLI("'"&METNEÇEVİR($A2;"gg.aa.yyyy")&"'!A:Z");KAÇINCI(PARÇAAL(HÜCRE("DOSYAADI";$A$1);MBUL("]";HÜCRE("DOSYAADI";$A$1);1)+1;31);DOLAYLI("'"&METNEÇEVİR($A2;"gg.aa.yyyy")&"'!A:A");0);KAÇINCI(B$1;DOLAYLI("'"&METNEÇEVİR($A2;"gg.aa.yyyy")&"'!1:1");0))
Bu formülün size artısı ne olacak;

1- Bazı hücrelerde hata oluşacak. Hata veren hücreler ilgili tarihte yok demektir. Bunu tablonuza eklemeniz gerekmektedir.
2- Tarihlere ait sayfadaki toplamları sonuç sayfanızla karşılaştırdığınızda eğer arada fark varsa ve tabloda ki formüller hata vermiyorsa tarih olan sayfaya yeni bir kriter eklenmiş demektir. Bunu tespit ettikten sonra sonuç sayfasına bu kriteri ekleyip formülü bu alana kopyalamanız yeterli olacaktır.
 

ÖmerFaruk

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2017
Mesajlar
4,779
Excel Vers. ve Dili
Microsoft 365 Tr-64
Alternatif olsun.
Yine Kızılay B2 hücresi için yazılmıştır, sağa ve aşağı doğru öoğaltıp diğer sayfalarda da kullanabilirsiniz.

C++:
=DOLAYLI(ADRES(KAÇINCI($A$35;KAYDIR(DOLAYLI(ADRES(1;1;1;1;METNEÇEVİR($A2;"g.aa.yyyy")));0;0;28;1));SÜTUN();1;1;METNEÇEVİR($A2;"g.aa.yyyy")))
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Teşekkürler üstadlar deniyorum ikisinide
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Merhaba üstadlar ikinizede teşekkür ederim. Bu forum sizler sayesinde vardır. Hayırlı günler dilerim
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Merhaba üstadlarım formül dosyamda çok kasma yaşatıyor. Başka çözüm varmıdır acaba
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,235
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Dinamik olsun deyince mecburen bazı zorluklara katlanmak durumundasınız.

Benim önerdiğim formülde hücre aralığını daraltarak biraz daha hız kazanabilirsiniz.

Tarih olan sayfalarda tablo aralığını A1:Z100 olacak şekilde tanımladım. Sanırım sizin için yeterli.olacaktır.

C++:
=İNDİS(DOLAYLI("'"&METNEÇEVİR($A2;"gg.aa.yyyy")&"'!A1:Z100");KAÇINCI(PARÇAAL(HÜCRE("DOSYAADI";$A$1);MBUL("]";HÜCRE("DOSYAADI";$A$1);1)+1;31);DOLAYLI("'"&METNEÇEVİR($A2;"gg.aa.yyyy")&"'!A1:A100");0);KAÇINCI(B$1;DOLAYLI("'"&METNEÇEVİR($A2;"gg.aa.yyyy")&"'!A1:Z1");0))
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Merhaba hocam teşekkür ederim denicem bu şekilde . Makroya çevirebilirmiyiz peki
Kod:
Sub Aktar()
    With Sheets("Ankara").Range("B2:O30")
    
    .FormulaR1C1 = _
        "=INDEX(INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!A:AC""),MATCH(MID(CELL(""DOSYAADI"",R1C1),SEARCH(""]"",CELL(""DOSYAADI"",R1C1),1)+1,31),INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!A:A""),0),MATCH(R1C,INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!1:1""),0))"
        .Value = .Value
  
     With Sheets("Antalya").Range("B2:O30")
    
    .FormulaR1C1 = _
        "=INDEX(INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!A:AC""),MATCH(MID(CELL(""DOSYAADI"",R1C1),SEARCH(""]"",CELL(""DOSYAADI"",R1C1),1)+1,31),INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!A:A""),0),MATCH(R1C,INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!1:1""),0))"
        .Value = .Value
          With Sheets("Aydın").Range("B2:O30")
    
    .FormulaR1C1 = _
        "=INDEX(INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!A:AC""),MATCH(MID(CELL(""DOSYAADI"",R1C1),SEARCH(""]"",CELL(""DOSYAADI"",R1C1),1)+1,31),INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!A:A""),0),MATCH(R1C,INDIRECT(""'""&TEXT(RC1,""gg.aa.yyyy"")&""'!1:1""),0))"
        .Value = .Value
        
    End With
    End With
     End With
    
    
    
End Sub
Bu şekilde yaptım doğru sonuç veriyor ama emin olamadım değerleri formül olarak yazmadıgı için kasma yaşatmıyor pek
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,235
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Elbette çevirebilirsiniz.

Önce kod ile hücrelere formülü yazdırın. Sonra sonuçlarını kontrol ettikten sonra değere çevirme satırlarını devreye sokarsınız.

Böylece kontrollü şekilde ilerlemiş olursunuz.
 
Katılım
4 Eylül 2020
Mesajlar
394
Excel Vers. ve Dili
Excel 2016
Altın Üyelik Bitiş Tarihi
22-11-2022
Tamamdır hocam tekrardan teşekkür ederim iyi günler dilerim
 
Üst