• DİKKAT

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

Sayfada bulunan verileri toplama

  • Konbuyu başlatan Konbuyu başlatan atbarus
  • Başlangıç tarihi Başlangıç tarihi
Katılım
17 Aralık 2010
Mesajlar
98
Excel Vers. ve Dili
2016 tr
Sayın hocalarım A ve S sütunları arasındaki bilgiler aylık olarak bana gelmekte. Bende onları başka bir tabloda işlemden geçirmekteyim. Yalnız sütun sıralamaları sabit gelmiyor şu an B sütunundaki veriler bir sonraki ayda G sütununda olabiliyor. Ben mesela B sütununda gözüken AFİŞ başlıklı verileri U sütununda nasıl gösterebilirim. Dosyayı ekte yükledim. Teşekkürler
 
Aşağıdaki fonksiyonları deneyebilirsiniz.

C++:
=YATAYARA(U$1;$A$1:$S$21;SATIR();0)

C++:
=İNDİS($A:$S;SATIR();KAÇINCI(U$1;$A$1:$S$1;0))
 
Merhaa,

Alternatif olsun.

Aşağıdaki kodları bir modüle kopyalayıp deneyiniz.

Kod:
Sub ADOB_ORNEK()

'Tools / References / Microsoft ActiveX Data Objects x.0 Library (En yüksek değer seçili olmalı)
    Dim connection As New ADODB.connection
    Dim DosyaAdı As String
    Dim query As String
    Dim rs As New ADODB.Recordset
   
    query = "SELECT [AFIS] FROM [Sayfa1$]"
   
    DosyaAdı = ThisWorkbook.FullName
   
    connection.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & DosyaAdı & _
                ";Extended Properties=""Excel 12.0;HDR=Yes;"";"
               
    rs.Open query, connection
   
    Sheets("Sayfa1").Range("U2").CopyFromRecordset rs
   
    connection.Close
   
End Sub
 
Merhaa,

Alternatif olsun.

Aşağıdaki kodları bir modüle kopyalayıp deneyiniz.

Kod:
Sub ADOB_ORNEK()

'Tools / References / Microsoft ActiveX Data Objects x.0 Library (En yüksek değer seçili olmalı)
    Dim connection As New ADODB.connection
    Dim DosyaAdı As String
    Dim query As String
    Dim rs As New ADODB.Recordset
  
    query = "SELECT [AFIS] FROM [Sayfa1$]"
  
    DosyaAdı = ThisWorkbook.FullName
  
    connection.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & DosyaAdı & _
                ";Extended Properties=""Excel 12.0;HDR=Yes;"";"
              
    rs.Open query, connection
  
    Sheets("Sayfa1").Range("U2").CopyFromRecordset rs
  
    connection.Close
  
End Sub

Hocam üstteki hocamın verdiği formüller çalıştı sizin verdikleriniz galiba makro bu konuya çok yabancıyım üsttekileri kullanayım sizede çook teşekkür ederim. minnetarız sizlere
 
Her zaman en kısa olan formülü tercih etmelisiniz.

Bu arada YATAYARA fonksiyonunda küçük bir revize yaptım. Son halini kullanmanız daha sağlıklı olacaktır.

Hocam çoooook teşekkür ederim ikiside çalıştı hangisini kullanmamaı tavsiye edersiniz ?
 
Aşağıdaki fonksiyonları deneyebilirsiniz.

C++:
=YATAYARA(U$1;$A$1:$S$21;SATIR();0)

C++:
=İNDİS($A:$S;SATIR();KAÇINCI(U$1;$A$1:$S$1;0))
Korhan Bey YATAYARA fonksiyonu başlıkları değiştirince çalışmıyor (ya da eksiltme yapınca)
 
Geri
Üst