• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

if sorgusu hakkında yardım

Katılım
9 Mart 2017
Mesajlar
54
Excel Vers. ve Dili
2016 Excel Türkçe
Merhabalar

Web üzerinden veri çekmiş olduğumuz sayfada if sorgusu oluşturmak istiyorum sorgu şu şekilde olacak eğer innertext "oyuncak ile başlıyor ise" internet sayfasını (ie.Refresh) yenile eğer oyuncak ise başlamıyor ise sorguya devam et şeklinde konu hakkında yardım edebilir misiniz ? Sorgu basit fakat döngüyü if döngüsünü sağlayamadım. Konu hakkında yardımcı olabilir misiniz teşekkürler.

Not : Oyuncak kelimesi hep sabit olan başlangıç kelimesi diğer kelimelerin yandaki gibidir. (Oyuncak peluş, Oyuncak Timsah, Oyuncak fincan)

İf ?????
)
Else ???

End İf



12 = doc.getElementsByClassName("acme")(i).Child.innerText
 
Merhaba
Sanırım şöyle bir şey istiyorsunuz

Kod:
if doc.getElementsByClassName("acme")(i).Child.innerText like "Oyuncak" & "*" then
'...
else
'...
end if

veya
(başında veya içinde "oyuncak" geçiyorsa)
Kod:
if  instr(1,doc.getElementsByClassName("acme")(i).Child.innerText , "Oyuncak" , vbtextcompare)<>0 then
 
Merhaba
Sanırım şöyle bir şey istiyorsunuz

Kod:
if doc.getElementsByClassName("acme")(i).Child.innerText like "Oyuncak" & "*" then
'...
else
'...
end if

veya
(başında veya içinde "oyuncak" geçiyorsa)
Kod:
if  instr(1,doc.getElementsByClassName("acme")(i).Child.innerText , "Oyuncak" , vbtextcompare)<>0 then




İlginiz için tşk. ederim .Fakat bunu aynı zamanda makromda bir döngüye sokmam gerekiyor yani oyuncak kelimesi geçiyor ise sayfayı ie. yenile geçmiyor ise devam et şeklinde fakat kodu aşağıdaki gibi oluşturamadım

Dim doc As HTMLDocument
Set doc = ie.document
12 = doc.getElementsByClassName("acme")(i).Child.innerText

Dim dd As Integer
For Each dd In
If InStr(1, doc.getElementsByClassName("acme")(i).Child.innerText, "Oyuncak", vbTextCompare) <> 0 Then
ie.Refresh2
Else
???????
End If
Next dd
 
Yapılacak işlemi bilmeyince biraz farazi oluyor ama son kodlarınız aşağıdaki şekillerde düzenlenebilir
Kod:
Set doc = ie.document

Set y = doc.getElementsByClassName("acme")
For i = 0 To y.Length - 1

If InStr(1, y(i).Child.innerText, "Oyuncak", vbTextCompare) <> 0 Then
ie.Refresh2
Else
Else
'oyuncak yoksa yapılacak işlem
End If
Next i

veya
Kod:
Set doc = ie.document
Set y = doc.getElementsByClassName("acme")
For Each i In y
If y.Children.Length <> 0 Then
For n = 0 To y.Children.Length - 1
If InStr(1, i.Children(n).innerText, "Oyuncak", vbTextCompare) <> 0 Then
ie.Refresh2
Else
'oyuncak yoksa yapılacak işlem
End If
Next n
End If
Next i
 
Çok Teşekkür ederim
 
Geri
Üst