Bir Xls Dosyasından Diğer Xls Dosyasına Veri Almak...

Katılım
1 Mayıs 2008
Mesajlar
14
Excel Vers. ve Dili
2003 Türkçe
Kendi çalıştığım workbook tan komut ile dosya yolunu tanımlayınca textboxta verinin adresi görünüyor.Örneğin "C:\Belgelerim\Çalışma.xls" gibi bu dosyanın "Sayfa1" isimli sayfasındaki verileri nasıl seçtirebilir ve kendi workbook uma aldırabilirim ?Çok acil yardımınıza ihtiyacım var.
Teşekkürler...
 
Katılım
1 Mayıs 2008
Mesajlar
14
Excel Vers. ve Dili
2003 Türkçe
Arkadaşlar bi yardım edin lütfen yoksa bittim ben!!!
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bunun için excelin veri-dış veri al-veri al özelliğini kullanabilirsiniz. Eğer makrolu istiyorsanız bir örnek dosya ekleyebilirsiniz.
 
Katılım
1 Mayıs 2008
Mesajlar
14
Excel Vers. ve Dili
2003 Türkçe
Selam arkadaşlar ilgili içerik ektedir.Lütfen yardımlarınızı esirgemeyiniz.Teşekkürler...
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,058
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Ekli dosyayı inceleyin.

Öncelikle proje ve veri tabanı isimli dosyaları bir klasör altına kopyalayın ve veritabanı isimli dosyayı kapatın. Proje dosyasında sayfa üzerindeki "istatistik verilerini yükle" butonu ile veritabanı isimli dosyayı klasöründe bulup seçin ve tamam butonuna basın. Veriler sayfa2'ye aktarılacaktır.

Veriler ADO ile alınmıştır. Kullanılan kod aşağıdaki gibidir.

Kod:
Private Sub CommandButton2_Click()
Set s1 = Sheets("sayfa2")
s1.[a3:b16,b19:b30].ClearContents
Set baglanti = CreateObject("ADODB.Connection")
baglanti.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & TextBox1 & ";Extended Properties=""Excel 8.0;HDR=no;IMEX=1"";"
Set rs = baglanti.Execute("[sayfa1$a1:e65536]")
Do Until rs.EOF
say = WorksheetFunction.CountA(s1.[a3:a16])
If WorksheetFunction.CountIf(s1.[a3:a16], rs.Fields(1)) = 0 Then
s1.Cells(say + 3, "a") = rs.Fields(1)
s1.Cells(say + 3, "b") = rs.Fields(4)
Else
sat = WorksheetFunction.Match(rs.Fields(1), s1.[a3:a16], 0)
s1.Cells(sat + 2, "b") = rs.Fields(4) + s1.Cells(sat + 2, "b")
End If
sat1 = Month(rs.Fields(3)) + 18
s1.Cells(sat1, "b") = s1.Cells(sat1, "b") + rs.Fields(4)
rs.MoveNext
Loop
rs.Close
baglanti.Close
End Sub
 
Katılım
1 Mayıs 2008
Mesajlar
14
Excel Vers. ve Dili
2003 Türkçe
:bravo: Hocam;
Kesinlikle kusursuz olmuş yardımımıza yetiştiğiniz için çok teşekkürler ellerinize sağlık hocam
 
Üst