Makro Kodunu Kısaltma Hakkında?

Yellowbox

Kullanıcı
Katılım
28 Tem 2022
Mesajlar
52
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Selamlar dostlar,
Umarım herkes iyidir.

Sorumu kısaca özetlemek istiyorum.

S...binden.com gibi bir siteden veri çekiyorum. Fakat yazdığım kodları sürekli kopyalayıp, numaralarını değiştirmem gerekiyor.
İşimi hallediyorum ama kodları kopyalayıp, değiştirip yapıştırmak çok yorucu hale geldi.
Sadece işimi hızlandırmak istiyorum.

Site url'si sabit.
Url'den sonra gelen her bir / işaretinden sonra yeni bir sayfa ismi, yani link var.
Aşağıdaki örnek kod'da olduğu gibi " / satılık"," / kiralık" ,"/arsa" vb. gibi.

Şu an, her bir link için liste ve listeler kelimelerinin yanına 1-2-3-4...-250..... gibi sayılar yazmam gerekiyor.
Ne kadar link ile işim var ise o kadar sayı yazmalıyım.

- satılık = liste1 - listeler1
- kiralık =liste2 - listeler2
- arsa =liste3 - listeler3

İşin özünde yazdığım uzun makro kodunu kısaltmak ve kolaylaştırmak istiyorum.

Bunu bir kod ile tek bir seferde yapmak mümkün ise yardımlarınızı rica ediyorum.

Web harvy kullanarak ihtiyacım olan tüm linkleri çektim.

Aşağıda yazdığım örnek kodlarda her bir link, kendi kodları ile birlikte tek tek yazılı durumda.

Vba'ya tek seferde bütün linkleri verip, kopyala değiştir yapıştır yapmadan, tek sefer yazacağımız bir kod ile veriyi çekebilir miyiz?


Yazdığım ve çalışan kodlarım şu şekilde;
Kod:
İndirmek için giriş yapmanız gerekmektedir.
(31 satır)
 
Yukarıda yazdığım kod şu şekilde çalışıyor.

Birinci link tarayıcıyı açıyor, birinci veriyi çekiyor kapanıyor.

Sonra ikinci link açılıyor veriyi çekiyor kapanıyor.

Sistem kod sırasına göre kaç adet kod yazıldıysa bu şekilde sorunsuz çalışıyor.

Bunu tek bir seferde halledebilirsem üstümden büyük bir yük kalkacak. ?
 
@Yellowbox
Kodda yapacağınız değişiklikler neyse;
-- değişen kısımlara ilişkin sayfada bir liste yaparak,
-- veya kodda deg=Array("abc", "cde", "fgh") gibi bir dizi tanımlaması yapıp.
koda ekleyeceğiniz bir for...next döngüsüyle bu listeyi döndürüp, link'i de bu döngü içinde oluşturmayı deneyin.
 
Deneme şansımın olmadığını belirtmiştim.
Mesela şöyle:

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(10 satır)
 
Hocam şu satırda hata alıyorum. Sanırım Selenium kodları ile uyum sorunu oluşuyor. Çünkü driver hatası veriyor. Bu hatayı genelde uyumsuz bir kod olduğunda görüyorum.
Kod:
İndirmek için giriş yapmanız gerekmektedir.
(1 satır)
 
@Yellowbox
Şöyle kastetmiştim.
Sadece Set listeler1 = Nothing satırı olmalı mı olmamalı emin olamadım (benim deneme şansım yok, siz denersiniz) .

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(16 satır)
 
@Yellowbox
Şöyle kastetmiştim.
Sadece Set listeler1 = Nothing satırı olmalı mı olmamalı emin olamadım (benim deneme şansım yok, siz denersiniz) .

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(16 satır)
Hocam kodu kendime göre düzenleyip ilgili değişiklikleri yaptım ve sonuç tam istediğim gibi.
Tekrar teşekkür ederim.
Elinize sağlık.
 
Benzer Konular Popüler İçerikler Daha Fazlası
Geri
Üst Alt