(18/02/2011, 23:00)akd yazdı: Merhaba sayın sledgeab,
olay çok güzel, bu kodların nasıl çalıştığını anlatabilrimisiniz,
örneyin, http://finans.mynet.com/cb/canliyayin.asp
bu linkteki tablo verilerini nasıl alırız,
balık tutmasını öğrenmek istiyorum. ;)
İyi geceler...
Sn akd.
Sorunuz ile ilgili olarak baz alacağımız kod bu konudaki son örnek uygulamadaki kodlar. Yazmadığım kodlarda değişiklik yok.
Set MyTable = HTML_Tables(4)
bu kodda 4 olmasının sebebi, alacağımız verilerin web sayfasının sayfa kaynağındaki kodlamada 5. "< table....." şeklinde olan kod olması. ilk table 0, sonrakiler 1,2,3......
SATIRSAYISI = (X - 6) / 1
bu satır en son olarak değişecek, veri aktarıldıktan sonra en altta kalan satırda eksik veya fazlalık varsa bu koddan ayarlanacak.
ReDim Sorgu(6, SATIRSAYISI - 1)
kodda 6 olmasının sebebi, web sayfasından 7 sütun aldığımız için. 0,1,2,3,4,5,6 = 7 adet
A = X + 4
bu kodda sonradan değiştirilecek, SATIRSAYISI'nın tersine bu kod veri aktardıktan sonra satırların üst kısmını ayarlamamız için bu şekilde doğru veri aktardık diyelim. 1. satırda web sayfasına göre ilk satır "XBANK" olacak. eğer kodu x+5 yaparsak ilk satır "XBLSM" olur.
Sorgu(0, X) = MyTable.Rows(A).Cells(0).innerText
bu satırda değişiklik yapmaya gerek yok, bazı sayfalarda tasarıma göre 0 yerine 1,2 vs yazılabilir. Deneme-Yanılma. Ancak alınacak sütun sayısı kadar Sorgu çalıştırılmalı. Eğer 9 sütun aktarıyorsak Sorgu(8,x)=...... şeklinde ardışık satırlar eklenmeli.
rc![Sıra] = Sorgu(0, X)
burada da rc![Sıra] kodundaki Sıra, tablodaki Sıra alanı. ve sorgu(0, x.... olduğundan bu birinci sütun.
Dikkat edilcek önemli husus, koda hata satırı yazılmamalı, tüm işlem bittikten sonra hata satırı yazılmalı.