Bir Web Sitesinden MS Excel'e Veri Aktarma

Excel programınıza Web Sayfalarından veri alarak çalışabileceğiniz bölüm.

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#1)  kingbeam » 12 Şub 2009 04:30

Merhaba,
Tarkan Bey'in de yönlendirmesi ile Internetexplorer.application yöntemi sayesinde bir internet sitesinden verileri nasıl MS Excel'e aktararırım sorusuna iyi cevaplar buldum. Ancak bir sorunla karşılaştım. Gerçi sorun değil ama, işte insanoğlu böyle :) . Ben bir sitenin bir sayfasından değil bir sitenin birçok sayfasından (ki bu sayfalarında doğal olarak döküman yapıları farklı) bu verileri almak istiyorum. Bunun için her seferinde MS Excel'e geri dönüp ilgili makroyu çalıştırmam ve makronun bilgi alacağı sayfayı da girmem gerekmekte. İşte bu noktada bu işin kolay bir yöntemi varmı diye sormak istedim? Gece hala çok uzun... :)

Teşekkürler.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#2)  Tarkan VURAL » 12 Şub 2009 10:39

Normal şartlarda bazı web sitelerini Excel ile de kullanabiliyorsunuz.

Mesela site içeriğinde text kutucuklar ve buton var ise, document kodlarından bu bilgilere ulaşıp, Excel'den kutucuklara veri göndererek( ie.document.all.kullanici.value = "Hakan", ie.document.all.parola.value = "12345" gibi ) ie.document.all.butonadi.click olayı ile de tıklanmış gibi kodlayabiliyorsunuz. Tıklama sonrası gelecek sayfanın document kodlarını da alıp işlemlerinize devam edebiliyorsunuz. Bunun için F8 ile adım adım giderek Locals penceresinde çıkan ie nesnesine ait structure'ları incelemeniz ve nasıl bir kurgu yapmak istediğinizi bilmeniz yeterli.

Nasıl bir site üzerinde çalıştığınızı belirtirseniz; hangi aşamalarda hangi sayfalardan ne tür veri aldığınızı bildirirseniz, konuyla ilgili belki yardımcı olabiliriz.

İyi çalışmalar.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ? O halde BAĞIŞ butonunu tıklayın...
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: tarkan@excelvba.net
Meslek: LUU, Yazılım Geliştirme Müdürü
Yaş: 44
İleti: 26745
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#3)  kingbeam » 13 Şub 2009 15:49

Arkadaşlar,
VBA' i tekrar düzgün şekilde öğrenebilmek için bana sürekli dinamik veri sağlayan ikariam isimli web tabanlı bir oyuna başladım. Bu oyunda veriler çok fazla üretiliyor ve alması daha rahat (oyun sırasındaki herhangi bir eylemden sonra çıkan ekran görüntüsü üzerinde ctrl+A ve ctrl+C yapınca metin olarak her bilgiyi alabiliyorum). Alınan verilerin MS Excel'de VBA kullanarak işlenmesini gerçekleştirdim. Kodlamalarım biraz daha profesyonellik ister ama o kısma henüz adım atmadım :) . http://www.ikariam.net sitenin adresi. Buradan oyuna girip istediğim adrese gitmek mümkün. Ama önce bu ilk ekranı geçmem lazım. Yani VBA kullanarak bu giriş ekranına gereken bilgileri (Dünya, kullanıcı adı ve şifre) vererek geçmek gerekiyor. Bunun için halen çalışıyorum. Yardımcı olabilirmisiniz?
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#4)  Tarkan VURAL » 13 Şub 2009 17:00

Merhaba,

Aşağıdaki kodlamalar ile bahsettiğiniz siteye girip Login olabilirsiniz. --)( Ancak Öncelikle aşağıya listelediğim Dünya seçenekleri için Value değerlerini bir tablo olarak görmenizi istedim. Ben örnekte Gamma seçtim ama siz hangi Dünya modeline oynuyor iseniz onu seçin.

s1.ikariam.net = Alpha
s2.ikariam.net = Beta
s3.ikariam.net = Gamma
s4.ikariam.net = Delta
s5.ikariam.net = Epsilon
s6.ikariam.net = Zeta
s7.ikariam.net = Eta
s8.ikariam.net = Theta
s9.ikariam.net = Iota
s10.ikariam.net = Kappa
s11.ikariam.net = Lambda
s12.ikariam.net = My
s13.ikariam.net = Ny
s14.ikariam.net = Xi
s15.ikariam.net = Omikron


Kod Bloğu :

Kod: Tümünü seç
Sub oyunabaglan()
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")' Yeni bir İE nesnesi oluşturuluyor.
With ie
    .navigate "http://www.ikariam.net/" ' Adres olarak girilmek istenen site adı yazılıyor
Do While .busy: Loop ' Henüz sayfa yüklemesi bitmedi ise bitene kadar bekle dedik
    .Visible = True ' Ekranımızda göster dedik
    With .document.all
        .Name.Value = "Tarkan" 'Kendi kullanıcı adınızı yazın
        .Password.Value = "123456" ' Kendi kullanıcı parolanızı yazın
        .universe.Value = "s3.ikariam.net" ' Oyun dünyası olarak Gamma bölümü seçilecek
        .Item(73).Click' Giriş butonu tetiklenecek
    End With
End With
Set ie = Nothing
End Sub


Bu aşamadan sonra ( ben üye olmadığım için devam edemedim , olacaktım ama hangi dünya modelinde oynadığınızı bilmediğimden, üyelik esnasında istediği modelden dolayı kayıt yaptırmadım ) devam eden işlemleri göremediğimden yorumlamadım.

Deneyip sonucu bildirirseniz memnun olurum.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ? O halde BAĞIŞ butonunu tıklayın...
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: tarkan@excelvba.net
Meslek: LUU, Yazılım Geliştirme Müdürü
Yaş: 44
İleti: 26745
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

REKLAM
Excel Logo XML Oluşturucu
Logo Object Designer ile Uyarlama

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#5)  kingbeam » 13 Şub 2009 19:02

Tarkan Bey,
Sonuç = 10 numara....

Gayet rahat bir şekilde bu sayfayı geçtik. Ben henüz internete yeni girdim yazdığınızı denedim (Kodunuzu da biraz inceleyeceğim. Öğrenmek güzel şey :) ). Peki bu işlemleri FireFox Mozilla veya Opera'da yapabiliyormuyuz?

Saygılarımla ve teşekkürler.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#6)  kingbeam » 13 Şub 2009 19:12

Arkadaşlar,
Tabi baştan düşünmem gereken noktayı şimdi anladım. VBA ile Firefox yada başka bir web browser'i çalıştıramayız. Doğal olarak iki rakipler (IE ve FF) ve aralarında bu şekilde bir ilişki yok. Yani olması mümkün değil. Kendi sorumu kendim cevapladım, sevinçliyim. :)

Saygılar.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

REKLAM
ETA - Excel Konsolide Raporlama
ETA Excel Personel Entegre Raporu

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#7)  Tarkan VURAL » 13 Şub 2009 19:14

Google Chrome, FireFox'u vs.. bilemiyorum. Ama İE bildiğim kadarıyla Mozilla alt yapısı ile aynı gibi. Fakat VBA kodlamalarında web tarayıcı olarak diğerlerinin obje ( nesne ) olarak oluşturabilirliklerini denemedim, araştırmak lazım. Sonuçta alt bileşen özellik (structure) 'lerini kullanıma izin veriyorsa, dil desteği de aynı dönüşümü sağlıyorsa yapılabilir görünüyor. Şimdilik isterseniz İE ile yola çıkalım. Bu aşamaya kadar F8 ile adım adım giderek isterseniz (CreateObject) nesne oluşturma esnasında VBE sayfasından Locals penceresini açarak yapıyı inceleyin. Document ve All kısımlarından faydalanıyoruz. Burada açılan Item'lerden verileri alabiliyoruz. Aynı internet sayfasında kaynak kodu görüntüle seçerek html kod yapısını inceleyebildiğimiz gibi. Tabi biraz VBA mantığı bilmek gerek. Biraz da html yapısını tanıyorsak daha da etkili sonuç üretilir.

İyi çalışmalar.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ? O halde BAĞIŞ butonunu tıklayın...
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: tarkan@excelvba.net
Meslek: LUU, Yazılım Geliştirme Müdürü
Yaş: 44
İleti: 26745
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#8)  kingbeam » 13 Şub 2009 20:13

Tarkan Bey,

Haklısınız. Önce bir IE'dan başlayalım sonra diğer web tarayıcılarına bakarız. Ben dediğiniz yerleri inceliyorum. İlk takıldığım yer gelen ekranı nasıl tam (maximize) ekran yapabilirim diye oldu. Sonra üst (top), sol (left), yükseklik (height) ve genişlik (width) sayesinde bunu çözdüm sanırım. Daha önce normal olarak "windowstate" kullanıyordum. Ama burada buna benzer bir şey göremedim. Araştırmaya devam ... :)

Saygılar ve teşekkürler.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#9)  kingbeam » 16 Şub 2009 16:05

Merhaba Arkadaşlar,

Tarkan Bey eğer mesajımı okuyabilirseniz şöyle bir sorum olacaktı:
Daha önce bu konu için yazdığınız kodda
Kod: Tümünü seç
.Item(73).Click' Giriş butonu tetiklenecek

şeklinde bir satır var. O satırda sanırım Item(73) ün karşılığı "button" olmalı. Ancak o "button"un "Item 73" olduğunu nasıl anladınız. Bunu görebilmek için yardımcı programlar varmı?

Saygılarımla ve teşekkürler.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#10)  Tarkan VURAL » 16 Şub 2009 16:17

Bunu deneme yanılma yöntemiyle buldum ve aslında oldukça zorlandım.
For döngüsü ile itemlerin click olaylarını denedim, 73 nolu item'deki click olayında tetiklenmiş olduğunu görünce çözümü buldum. Bazı buton nesnelerinin name özelliklerini bir js ya da css dosyasına, class içerisine alıyorlar ve name özelliğinden click veremiyorsunuz. Bu defa bu tarz bir deneme yanılma yöntemine başvurmak zorunda kalıyorsunuz. Tabi item 'lerin içlerini tek tek inceleyip de bulabilirsiniz ama click olayını hangisinin vereceğini bu şekilde bulmak zor. Yine de belki pratik çözümü vardır ancak ben bilmiyorum. Bilen varsa paylaşırsa sevinirim.

Daha kolayını bulana kadar şimdilik en kolayı döngü ile F8 adım adım onaylı şekilde deneme yapmak olacaktır.

İyi çalışmalar.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ? O halde BAĞIŞ butonunu tıklayın...
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: tarkan@excelvba.net
Meslek: LUU, Yazılım Geliştirme Müdürü
Yaş: 44
İleti: 26745
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#11)  kingbeam » 16 Şub 2009 16:30

Tarkan Bey,

Rica etsem o For Next döngüsünüde buraya koyabilirmisiniz? Anlamak istiyorum. Bu konuda sanırım çok açım :) .

Saygılar.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#12)  Tarkan VURAL » 16 Şub 2009 16:39

Kodların arasından aldığım bir kısmını döngülü halde yazıyorum :

Kod: Tümünü seç
    With .document.all
        .Name.Value = "Tarkan" 'Kendi kullanıcı adınızı yazın
        .Password.Value = "123456" ' Kendi kullanıcı parolanızı yazın
        .universe.Value = "s3.ikariam.net" ' Oyun dünyası olarak Gamma bölümü seçilecek
for i = 1 to 100
        .Item(i).Click' Giriş butonu tetiklenecek
next i
    End With


F8 ile adım adım çalıştırırken i değişkeninin aldığı değeri ve aynı zamanda item(i).click olayından sonra sitede olabiliecek değişiklikleri izliyorum. i değeri 74 olduğunda bakıyorum ki siteye giriş yaptı, girişi tıkladı, evet şimdi yakaladım seni diyorum ve item(73), item(74) , item(75) aralıklarını manuel yazarak tekrar deniyorum. Aralarından hangisi ise net olarak onu seçip kodlamaya ekliyorum, döngüyü kaldırıyorum.

Deneme yanılma dediğim olay bu. :D
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ? O halde BAĞIŞ butonunu tıklayın...
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: tarkan@excelvba.net
Meslek: LUU, Yazılım Geliştirme Müdürü
Yaş: 44
İleti: 26745
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#13)  kingbeam » 16 Şub 2009 17:18

Tarkan Bey,

Bu kod ile şifre, kullanıcı adı ve dünyayı seçtikten sonra ilk sayfa ekranını açtık, ben daha sonra açık explorer üzerinden aynı sitede gezinmeye (navigation yada benzeri) devam etmek istiyorum. Bunun için ikinci bir kod nasıl olmalı?

Teşekkürler ve Saygılarımla.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#14)  Tarkan VURAL » 16 Şub 2009 17:36

Hakan bey ben o siteye üye olmadığımdan devamında gelecek sayfaları göremedim.
Ne yapmak istediğinizi daha açıkça yazarsanız belki birileri üye olmak isteyip konuya yardımcı olabilir. Ben amacı tam olarak anlayamadım. Siteye üye olmayı düşünmediğimden buraya kadar yardımcı olabiliyorum.

İyi çalışmalar.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ? O halde BAĞIŞ butonunu tıklayın...
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: tarkan@excelvba.net
Meslek: LUU, Yazılım Geliştirme Müdürü
Yaş: 44
İleti: 26745
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#15)  kingbeam » 16 Şub 2009 17:47

Tarkan Bey,

Beni yanlış anladınız. Ben sizin siteye üye olmanızı istemedim. Sorumu daha açık yazayım. Herhangi bir siteye bu kod ile bağladığımızda, örneğin;

Kod: Tümünü seç
    Sub Excelvba_net_baglan()
    Dim ie As Object
    Set ie = CreateObject("internetexplorer.application")' Yeni bir İE nesnesi oluşturuluyor.
    With ie
        .navigate "http://www.excelvba.net/" ' Adres olarak girilmek istenen site adı yazılıyor
    Do While .busy: Loop ' Henüz sayfa yüklemesi bitmedi ise bitene kadar bekle dedik
        .Visible = True ' Ekranımızda göster dedik
    End With
    Set ie = Nothing
    End Sub


Bu örnekte ana sayfa explorer ekranında belirmekte. Sorun yok. Ama aynı explorer ekranında www.excelvba.net/hakkimizda şeklinde olan sayfaya nasıl gidebilirim? İşte bunu sormuştum. Ben 1-2 kez denemdim ama araştırmaya devam ediyorum. Farklı bir explorerda açmak (doğal olarak sizin yardım için gönderdiğiniz kod ile) çok kolay. Ama aynı explorerda hatta aynı sekmede (tab) internetteki gezintime devam etmek istiyorum. Uzun yazdım, özür dilerim, bir önceki sorumda kendimi ifade edemedim, ama şimdi daha açık olduğunu düşünüyorum.

Saygılarımla ve Teşekkür ederim.
Bu iletideki ekleri görmek için gerekli yetkilere sahip değilsiniz.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#16)  Tarkan VURAL » 16 Şub 2009 18:07

Aşağıdaki kod ile ana sayfadayken forum sayfası tıklanmış gibi sayfa içerisinde gezintiye devam edebiliyorsunuz.

Kod: Tümünü seç
    Sub Excelvba_net_baglan()
    Dim ie As Object
    Set ie = CreateObject("internetexplorer.application")
    With ie
        .navigate "http://www.excelvba.net/"
    Do While .busy: Loop
        .Visible = True
    Do While .busy: Loop
        .document.all.Item(49).Click
    End With
    Set ie = Nothing
    End Sub


49 'u nereden buldunuz derseniz; deneme uyanılma ile :D
Bu arada kendi sitemizde hiç denememiştim, ilk kez denemiş oldum.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ? O halde BAĞIŞ butonunu tıklayın...
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: tarkan@excelvba.net
Meslek: LUU, Yazılım Geliştirme Müdürü
Yaş: 44
İleti: 26745
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#17)  kingbeam » 16 Şub 2009 18:11

Tarkan Bey,

:)

Bu deneme yanılma öğrenme şeklini bende çok seviyorum. Ama tabi sizin gibi henüz HTML 'e hakim olmadığımdan dolayı deneyerek sürekli yanılıyorum. :)

Ama azmettim öğreneceğim. Öğrenmem gerekli. Descartes'in dediği gibi bir durumdayım: Zorundaysan yaparsın.


Saygılarımla.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#18)  kingbeam » 16 Şub 2009 18:22

Tarkan Bey,

Ben düşündüm taşındım, size bir öncekinden daha zor (en azından benim için) başka bir durum sunayım dedim. Yemedim içmedim 5 dakikada bunu düşündüm :) .

Bir önceki örnekte aynı MS Explorer da aynı sekmede aynı sitenin farklı iki sayfası arasında gezindik. Peki şartlar şu şekilde olsa: aynı MS Explorer da aynı sekmede farklı iki sitenin birer sayfası arasında gezinsek. Örneğin;

1. adres : www.excelvba.net
2. adres : www.google.com

Saygılarımla ve hadi bakalım :)
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#19)  Tarkan VURAL » 16 Şub 2009 19:06

kingbeam yazdı:Saygılarımla ve hadi bakalım

Hakan bey biz müsait oldukça sizlerin sorunlarınıza bildiğimiz ölçüde yanıt vermek için bu siteyi kurduk.
Kendi bilgi kapasitemizi sınattırmak, test ettirmek için değil. [evet]

Sorunuzun yanıtı : ( başkalarının da işine yarayabilir diye yanıtlıyorum )
VBA.da bir explorer nesnesi oluştururken verdiğiniz navigate özelliği ile açılan sayfaların structure' larından yararlanırsınız. Sayfaların içerisindeki gezintilerinizde, document kodlarından faydalanıp bir takım veri alma yahut yollama işlemlerinizi gerçekleştirirsiniz. Sayfalar arası gezintilerinizde document kodlarınız da değişecektir.

Aşağıdaki örnekte Google Arama Motoru açılır, ilgi alanımız olan anahtar sözcüklerden arama kriteri olarak
Excel VBA girilir. Listelenenlerin en başındaki site seçilerek o siteye giriş yapılır. Site muhtemelen bizim sitemiz olacağından kodlamaya devam ettim. Forum bölümüne giriş için ilgili seçeneği tıklar. Foruma girmiş olur.

Kod: Tümünü seç
Sub Excelvba_net_baglan()
Dim ie As Object, kontrol As String, hedef As String
Set ie = CreateObject("internetexplorer.application")
With ie
    .navigate "http://www.google.com.tr"
Do While .busy: Loop
    .Visible = True
    With .document.all
        .q.Value = "ExcelVBA"
        .btng.Click
    End With
Do While .busy: Loop
On Error Resume Next
    hedef = .document.all.Item(82).href
    .document.all.Item(82).Click
Do While .busy: Loop
Do While Not .StatusText = "Bitti": Loop
kontrol = Mid(.locationurl, 1, InStrRev(.locationurl, "/", -1, 1))
If hedef = kontrol Then
Do While .busy: Loop
    .document.all.Item(49).Click
End If
End With
Set ie = Nothing
End Sub

Google' dan başladık ve anahtar sözcüklerle aranan siteden yola çıkarak sitenin içine, oradan da forum bölümüne girdik.
Resim
www.tarkanvural.com.tr

İnnâ lillâhi ve innâ ileyhi raciûn
Şüphesiz ki; biz Allah’a âidiz ve vakti geldiğinde O’na döndürüleceğiz.

HasbunAllâhu ve nimel vekîl
Bize Allah yeter. O ne güzel vekildir.


ExcelVBA.NET' e katkıda bulunmak ister misiniz ? O halde BAĞIŞ butonunu tıklayın...
Kullanıcı avatarı
Tarkan VURAL
Yönetim Kurulu
 
Adı Soyadı:Tarkan VURAL
Kayıt: 14 Haz 2008 20:27
Konum: tarkan@excelvba.net
Meslek: LUU, Yazılım Geliştirme Müdürü
Yaş: 44
İleti: 26745
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#20)  kingbeam » 16 Şub 2009 23:11

Tarkan Bey,

Özür dilerim. Bugüne kadar yardımlarınız içinde çok teşekkür ederim.

Saygılarımla ve teşekkürler.
Kullanıcı avatarı
kingbeam
Siteye Alışmış
 
Adı Soyadı:Hakan Işın
Kayıt: 10 Şub 2009 15:34
İleti: 129
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul / Bakırköy


Forum Excel ile Web Sayfaları Veri İşlemleri

Online Kullanıcılar

Bu forumu görüntüleyenler: Kayıtlı kullanıcı yok ve 1 misafir

Bumerang - Yazarkafe