• DİKKAT

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

Düşey ara Detaylı (Düşeyara dolaylı formül gerek)

  • Konbuyu başlatan Konbuyu başlatan xnanx
  • Başlangıç tarihi Başlangıç tarihi
Katılım
16 Ocak 2010
Mesajlar
81
Excel Vers. ve Dili
Excel 2007 Türkçe
Merhaba,
İki adet excel dosyam var birinde bağımsız xlsx dosyası.
Veri.xlsx
Güncel.xlsx

Biri Veri dosyam.
veri.xlsx dosyasında, Sheet sheet Ocak 2017, Şubat 2017 diye gidiyor(bütün yıl var) Örnek Ocak 2017 Sheetinin, A sütünün da 01.01.2017 den aşağı doğru tarihler var. Tarihin yanında B sütününda çekmek istediğim veri var.

Bağımsız başka bir dosyadan (Güncel.xlsx) yapmak istediğim.

01.01.2017 yazdığım zaman Ay Ocak ise Ocak Sheetinde gitsin Ayın günü kaçsa sağındaki değeri getirsin istiyorum. 12.12.2017 yazarsam da aralık sheetine gidip 12. günün yanındaki veriyi getirsin istiyorum.
Bir çözümü var mıdır?
 
Son düzenleme:
=DÜŞEYARA(C59;'[veri.xlsx]Ocak'!$C$7:$S$37;2;0)

Yukarıdaki formülde Ocak sheetinde gidiyor.
=METNEÇEVİR(AY(C59);"aaaa") Bu şekilde Tarihten Ocak yazdırabiliyorum.
Ocak sheet ini değişken nasıl yaparım bu formülde acaba? Ay şubat, mart vs olunca da ilgili aya gitsin istiyorum.
 
Bir dosya paylaşım sitesine örnek dosyanızı eklerseniz yardım almanız kolaylaşır.
 
Resimli olarak anlatmaya çalışayım;
iki farklı excel dosyası var birinde veri var, sheetler Ocak, şubat, mart diye aralık ayına kadar devam ediyor 12 sheet var.

Başka bir dosyadan düşey ara yapmak istiyorum.

01.01.2017 yazınca (ocak olduğu için ocak sheetine gidip ilgili tarihi getirecek
başka tarih yazarsam hangi aysa o aya gidip ilgili günü getirecek.

Bu işlemlerin hepsi 2017 yılı başka yıl yok.



p3BOdWJDqpq7IB7-wdvrIpJxxQ0ioA5YJUFN60l3te902uOe97OBgPihLzYr-tzgMiBPpbF3HW5l_HwcY4L8yg%3D%3D
 
Formül sonunda yaptım.

=(DÜŞEYARA(A1;DOLAYLI("'[VERİ.XLSX]"&B1&"'!"&"A:B");2))


Fakat dosya kapalıyken, yolunu yazıp çalıştırma imkanım var mıdır?
C:\dosya nın içindeyse.
 
Makro ile yapılmış dosyanız ektedir

Kapalı çalışma kitabının sayfalarında arama yapan dosyanız ektedir,
Kod:
Sub deneme()
        Application.ScreenUpdating = False
        Dim sayfalar As Variant, i&, h&, kaynak$, son_satir&, aranan$, bul As Range
        sayfalar = Array("OCAK", "ŞUBAT", "MART")
        Sayfa1.Range("b2:b65536").ClearContents
        Sayfa1.Columns("a:a").NumberFormat = "@"
        kaynak = "VERİ.xlsx"
        Workbooks.Open ThisWorkbook.Path & "\" & kaynak
                               

        For i = 0 To UBound(sayfalar)
         Workbooks(kaynak).Sheets(sayfalar(i)).Columns("a:a").NumberFormat = "@"
            son_satir = ThisWorkbook.Sheets("Sayfa1").Range("a65536").End(3).Row
            For h = 1 To son_satir
            
                aranan = ThisWorkbook.Sheets("Sayfa1").Cells(h, 1).Value
                If aranan <> Empty Then

                    Set bul = Workbooks(kaynak).Sheets(sayfalar(i)).Range("a1:a65536").Find(aranan, LookIn:=xlValues, _
    LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
    MatchCase:=False, SearchFormat:=False)

                    If Not bul Is Nothing Then
                        ThisWorkbook.Sheets("Sayfa1").Cells(h, "B").Value = Workbooks(kaynak).Sheets(sayfalar(i)).Cells(bul.Row, "B").Value
                    End If
                End If
            Next h
        Next i
        Workbooks(kaynak).Close False
        Application.ScreenUpdating = True
            Sayfa1.Columns("a:a").NumberFormat = "m/d/yyyy"
        MsgBox "İşlem Tamamlandı.", vbInformation, "BİLGİ"
        Erase sayfalar: i = Empty: h = Empty: kaynak = Empty: son_satir = Empty: aranan = Empty: Set bul = Nothing
    End Sub

Not: tarih formatında iken arama yaptıramadım, her iki dosyada da önce a sütunlarını (tarihleri) metne çivirip, işlem bitiminde takrar tarih formatına çevirmek suteriyle sonucu ulaştım, uzman arkadaşlar kodları inceleyip tarih formatında iken arama yaptırabilirlerse bizde faydalanmış oluruz.

Tarihleri : sayfalar = Array("OCAK", "ŞUBAT", "MART", "NİSAN"..........)12. Aya kadar devam ettirirsiniz.
 

Ekli dosyalar

Son düzenleme:
Merhaba benim şöyle bir sorum olacaktı.

=DÜŞEYARA(A2;[Kitap1]Sayfa1!$A$2:$B$14;2;0)

Kırmızı ile belirttiğim yeri bir hücreden alsın istiyorum.

Örnek c2 hücresinde dosya adı yazacak ve makro ilgili dosyayı açıp düşeyara uygulayacak.
 
Merhaba,

C2 hücresine aşağıdaki veriyi yazın.

Kod:
[Kitap1.xls]Sayfa1!$A$2:$B$14

Sonra bir modüle aşağıdaki kodu uygulayın.

Kod:
Sub TEST()
    Application.ScreenUpdating = False
    
    Set K1 = ThisWorkbook
    Set S1 = K1.Sheets("Sayfa1")
    Yol = "C:\Users\Admin\Desktop\Kitap1.xls"
    Set K2 = Workbooks.Open(Yol)
    K1.Activate
    S1.Range("A5") = "=VLOOKUP(A2," & S1.Range("C2").Value & ",2,0)"
    K2.Close 0
    
    Application.ScreenUpdating = True
End Sub

Dosya yolunu ve isimlerini kendinize göre uyarlayıp kodu test edin.
 
Korhan Hocam

Eğer sayfa adında arada boşluk varsa çalışmıyor.

Örnek 15 şubat 2018.xlsx şeklindeki dosyada işlem yapmıyor. Boşlukları silince sorun yok.
 
Deneyiniz.

Kod:
Sub TEST()
    Application.ScreenUpdating = False
    
    Set K1 = ThisWorkbook
    Set S1 = K1.Sheets("Sayfa1")
    Yol = "C:\Users\Admin\Desktop\15 ŞUBAT 2018.xlsx"
    Set K2 = Workbooks.Open(Yol)
    K1.Activate
    Veri = Replace(Replace(S1.Range("C2").Value, "[", "'["), "!", "'!")
    S1.Range("A5") = "=VLOOKUP(A2," & Veri & ",2,0)"
    K2.Close 0
    
    Application.ScreenUpdating = True
End Sub
 
Merhabalar


Konu ile ilgili yardımlarınızı beklemekteyim. Kaç gündür kendim çözmeye çalışıyorum ama işin içinden çıkamadım.
 
hocam formulu yazdım sayfanın birisinde doğru veriler geliyor birisinde farklı farklı veriler geliyor. ACİL YARCIMCI OLURMUSUNUZ
 

Ekli dosyalar

Geri
Üst