Bir Web Sitesinden MS Excel'e Veri Aktarma

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

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#21)  mrtyvz » 24 Arl 2018 12:17

tarkan bey merhaba .click yaptıracağımız butonun item? kaç olduğunu deneme yanılma yaparak bulduğunuzu söylemişsiniz. ancak bunun nasıl yapılacağını anlayamadım, i= değişkenini nasıl takip edebiliyorsunuz? Yardımcı olursanız memnun olurum.
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#22)  Tarkan VURAL » 24 Arl 2018 12:35

Benim bahsettiğim yöntem öğreticiliği açısından önemli. Ama aslen document object model kullanarak komplike bir yapı ile takip de edebilirsiniz. Erman beyin DOM ile bir çalışması vardı, arama yaparak onu inceleyebilirsiniz. Değişken değerlerini izlemek için VBE ekranındaki View menüsü altındaki Locals Window sekmesini aktif etmelisiniz. Tümünü buradan izleyebileceğiniz gibi, değişken üzerinde sağ click add watch yaparak sadece hedeflediğiniz değişkenin değerlerini de watch windowdan izleyebilirsiniz. Kolay gelsin.
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 18:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 45
İleti: 26990
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#23)  mrtyvz » 31 Arl 2018 08:26

Tarkan Bey merhaba.
Bahsettiğiniz çalışmayı daha birçok alt başlığı inceledim, muazzam genişlikte bir forum.
Daha çok yeni başladım, macro ile birşeyler yapabilmek heyecan verici.
Hafta sonu biraz uğraştım, zor olsada birşeyler yapmayı başardım. Ancak hazır kodlar üzerinden birşeyler yapabilmek çok zor, en başından başlamak lazım farkındayım. :shock:
Öncelikle yaptığım şey kamu portalından sahsın tc nosunu yazaıyroum ve ARA butonu ile sayfasaına giriş yapıyorum. (şifre yazmam gerekmiyor.)
2 şey yapmak istiyorum. Şayet yardımcı olursanız çok memnun olurum.
1. Excel sayfasındaki A1-A10 arasındaki tc lerin herbirini aynı pencere içerisinde ayrı sayfalarda yapıştırarak ara butonunu tetiklesin.
2. ARA butonunu tıkladıktan sonra açılan sayfada tekrar bir butonu nasıl tetikleyebilirim. (bunun için çok uğraştım ama [uzgun] )

Umarım bende birgün bir arkadaşın kodlarına yardımcı olabilirim. Türkçemize sahip çıktığınız ve gönüllü olarak yaptığınız bu çalışmaları çok takdir ediyorum. Allah yar ve yardımcınız olsun.

Bu kodları kullanıyorum; çalışıyor.

Sub arama()
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
With ie
.navigate "SİTEADRESİ"
Do While .busy: Loop
.Visible = True
With .document.all
.txtKimlikNoArama.Value = "TCNOSU"
.Item(206).Click
End With
End With
Set ie = Nothing
End Sub
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#24)  mrtyvz » 07 Oca 2019 14:29

Yukarıdaki problemimi çözebilecek biri var mıdır. Teşekkürler...
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

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

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#25)  mrtyvz » 08 Oca 2019 12:32

Tarkan Bey yardımlarınız için çok teşekkürler, şkşk özellikle for döngüsü muhteşem oldu. [yummy]
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#26)  Tarkan VURAL » 22 Oca 2019 13:25

Yoğunluktan konudan koptum. Çalışmanızı tamamladınız mı ?
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 18:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 45
İleti: 26990
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

REKLAM
ETA - Excel Konsolide Raporlama
ETA Excel Personel Entegre Raporu

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#27)  mrtyvz » 22 Oca 2019 15:35

Bayağı ilerleme katettim, bu çalışmanın tamamlanabilmesi biraz zamanımı alacak gibi gözüküyor. Haddim olmayan işlerle uğraşıyorum. [uzgun] Ama çok zevkli [oley] . Bu arada DOM çalışması ve sizin açıklamalarınız çok işimi gördü. Allah razı olsun. Ancak bazı sıkıntıları aşamıyorum.

1. tarih değeri girerken (hücredeki tarihi) rakamsal olarak girmiyor.
.ctl03_ctlAcmaBitTarih_textBox.Value = [H5] şeklinde ancak İE de monday jun.... gibi oluyor

2. En büyük sıkıntımız ise pop-up penceresinde veri girişi; forumu incelerken bir başlıkta ilgili konuya devam ettim. Şayet ilgilenebilirseniz linki aşağıda:
viewtopic.php?f=92&t=10596&p=237081#p237081

Aslında bu liste uzar, hehe ancak kendim uğraşmadan sormak istemiyorum.
Teşekkürler...
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#28)  Tarkan VURAL » 23 Oca 2019 08:23

Epeydir Web çalışması yapmadım, biraz bocalıyorum. :) DOM içerisinde yanlış hatırlamıyorsam popup document verileri de ayrı frame şeklinde oluşuyor olmalı. İçerikleri incelemek lazım.
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 18:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 45
İleti: 26990
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#29)  mrtyvz » 23 Oca 2019 10:19

Hımm bu konu kenarda dursun o zaman biraz daha araştırmam gerekecek.
O halde size yukarıdaki sorumu tekrar edeyim.
1. activecell ile şeçilen bir veriyi webte belli bir yere aktarabiliyorum. Peki bu aktarmayı A sutunundaki ilk 10 hücreyi sırasıyla yapmasını isteyebilirmiyim. for döngüsüyle birşeyler yapmaya çalıştım beceremedim.

Sub arama()
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
With ie
.navigate "ADRES"
Do While .busy: Loop
.Visible = True
With .Document.all
Application.Wait Now + TimeValue("00:00:02")
.txtKimlikNoArama.Value = ActiveCell
.Item(206).Click
End With
End With
End Sub

2. Her bir sayfayı aynı pencerede açtırması mümkünmü
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#30)  Tarkan VURAL » 23 Oca 2019 10:33

Merhaba,
Aşağıdaki biçimde deneyin. Denemeden ezbere yazıyorum, hata alırsanız adres paylaşın, deneyelim.


Kod: Tümünü seç
Sub arama()
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
With ie
.navigate "ADRES"
.Visible = True
Do While .busy: doevents: Loop
do while .readystate<>4 : doevents: loop
for i = 1 to range("a65536").end(3).row
With .Document.all
Application.Wait Now + TimeValue("00:00:02")
.txtKimlikNoArama.Value = cells(i,"a").value
.Item(206).Click
Do While .busy: doevents: Loop
do while .readystate<>4 : doevents: loop
msgbox cells(i,"a").value & " için tıklandı",,"Www.ExcelVba.Net"
End With
.navigate "ADRES" ' ana ekrana geri dönelim, yeni gelen veriyi gireceğiz...
Do While .busy: doevents: Loop
do while .readystate<>4 : doevents: loop
next
End With
End Sub
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 18:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 45
İleti: 26990
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#31)  mrtyvz » 23 Oca 2019 13:36

Teşekkür ederim. Kodu aşağıdaki şekilde düzenleyerek çalıştırdım.
Sanıyorum yukarıda anlatamadım. Herbir hücre için ayrı sayfada arama yapmasını kastetmiştim. (aynı pencerede ancak farklı sayfalarda :) ) mümkünmüdür?
NOT: Adres bilgisi vermekte sıkıntı yok ancak dışarıdan erişimi olmayan bir kamu portalıdır.

Sub a_talep_kontrol()
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
With ie
.navigate "ADRES"
.Visible = True
Do While .busy: DoEvents: Loop
Do While .readystate <> 4: DoEvents: Loop
For i = 3 To Range("a65536").End(3).Row
With .Document.all
Application.Wait Now + TimeValue("00:00:02")
.ctl03_ctlISTISNO.Value = Cells(i, "a").Value
.Item(1670).Click
Application.Wait Now + TimeValue("00:00:03")
MsgBox Cells(i, "a").Value & " için tıklandı", , "Www.ExcelVba.Net"
End With
.navigate "ADRES" '
Do While .busy: DoEvents: Loop
Do While .readystate <> 4: DoEvents: Loop
Next i

End With
End Sub
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Cevap: Web sitesini yeni sekmede açmak

İleti#32)  Tarkan VURAL » 23 Oca 2019 13:45

Merhaba navigate metoduna ikinci parametre olarak Clng(2048) yazıp deneyin.

Kod: Tümünü seç
Sub a_talep_kontrol()
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
With ie
.navigate "http://www.excelvba.net", CLng(2048)
.Visible = True
Do While .busy: DoEvents: Loop
Do While .readystate <> 4: DoEvents: Loop
'For i = 3 To Range("a65536").End(3).Row
'With .Document.all
Application.Wait Now + TimeValue("00:00:02")
'.ctl03_ctlISTISNO.Value = Cells(i, "a").Value
'.Item(1670).Click
'Application.Wait Now + TimeValue("00:00:03")
'MsgBox Cells(i, "a").Value & " için tıklandı", , "Www.ExcelVba.Net"
'End With
.navigate "http://tarkanvural.com.tr", CLng(2048) '
Do While .busy: DoEvents: Loop
Do While .readystate <> 4: DoEvents: Loop
'Next i
End With
End Sub
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 18:27
Konum: @tarkanvural73
Meslek: LUU, Database Expert, Senior Software Specialist, Developer
Yaş: 45
İleti: 26990
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: İstanbul - Beylikdüzü

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#33)  mrtyvz » 23 Oca 2019 13:52

Üstadım çok hızlısınız ve harikasınız. ikinci üçüncü ... sayfaları aynı pencerede açıyor şkşk . Ancak veri girişini yine ilk sayfada yapıyor.
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#34)  mrtyvz » 28 Oca 2019 21:33

Acaba yukarıdaki sorunumuza umut olacak birileri varmıdır. Üstadlar!!!
Sanıyorum bu sorunu aşarsak pop-up veri girişinde bir umut olabilir. Çünkü forumda bu soruya bir cevap bulamadım.
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Cevap: Bir Web Sitesinden MS Excel'e Veri Aktarma

İleti#35)  mrtyvz » 30 Oca 2019 08:24

Evreka şkşk...Aşağıdaki kod ile herbir sayfayı ayrı pencerelerde açarak veri girişi yapılabiliyor. Her ne kadar tam olarak istediğim şey (her sayfayı aynı pencerede açmak) olmasa da iş görür.Tarkan Bey Teşekkürler.

Kod: Tümünü seç
Sub a_talep_kontrol()
For i = 3 To Range("a65536").End(3).Row
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
With ie
.Navigate "WEB ADRESİ"
.Visible = True
Do While .Busy: DoEvents: Loop
Do While .ReadyState <> 4: DoEvents: Loop
With .Document.all
Application.Wait Now + TimeValue("00:00:02")
.ctl03_ctlISTEMINO.Value = Cells(i, "a").Value
ie.Document.getElementById("ctl03_ctlCommandItem_Search").Click

End With
Do While .Busy: DoEvents: Loop
Do While .ReadyState <> 4: DoEvents: Loop
End With
Next i
End Sub
Kullanıcı avatarı
mrtyvz
Yeni Başlamış
 
Kayıt: 13 Eyl 2018 08:22
Meslek: danışman
Yaş: 38
İleti: 15
 
Cinsiyet: Bay
Bulunduğunuz İl / Semt: sakarya

Önceki

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