• DİKKAT

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

Soru Macro hata veriyor

  • Konbuyu başlatan Konbuyu başlatan k0081
  • Başlangıç tarihi Başlangıç tarihi
Haluk hocam elinize sağlık güzel çalışıyor Epeydir IEXPLORER Probleminden Kur Bilgisi çekemiyordum bununla çekebildim.
bende bir soru sorayım Değişim Sütununda Değeri Ortalamak için aşağıdaki Kodda nasıl bir değişiklik gerekir.

Kod:
Range("E2:E22").NumberFormat = "@"
Kendi soruma cevap buldum aşağıdaki şekilde hallettim.
Üstteki yazılı olan kodun altına alttaki kodu ilave ettim.

Sitede bu konuda çok yararlı bir paylaşım yapılmış. Burada...

Kod:
Range("E2:E22").HorizontalAlignment = xlCenter
 
Olabilir, muhtemelen sayfa yapısı değişmiştir...

.
 
Olabilir, muhtemelen sayfa yapısı değişmiştir...

.


hocam şu noktada hata veriyor

Kod:
  Set myTable = Tables(x)



ilgili kodun Tamamı

C#:
Sub getAltin()
'   Haluk - 12/10/2021
'   sa4truss@gmail.com
'   https://excelhaluk.blogspot.com/
 
    Dim objHTTP As Object, strURL As String
    Dim HTML As Object, Tables As Object, Table As Object
    Dim x As Integer, i As Long, iRow As Long, j As Integer
 
    Range("B2:F16, B20:F22") = ""
 
    Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
    strURL = "http://www.altinpiyasa.com/"
 
    objHTTP.Open "GET", strURL, False
    objHTTP.send

    Set HTML = CreateObject("HTMLFILE")
    HTML.body.innerHTML = objHTTP.responseText
 
    Set Tables = HTML.getElementsByTagName("table")
 
    For x = 1 To 2
        Set MyTable = Tables(x)
      
        iRow = IIf(x = 1, 1, 19)
        For i = 1 To MyTable.Rows.Length - 1
            iRow = iRow + 1
            For j = 1 To MyTable.Rows(i).Cells.Length - 1
                If j < 4 Then
                    Cells(iRow, j + 1) = Replace((MyTable.Rows(i).Cells(j).innerText), ".", "") + 0
                Else
                    Cells(iRow, j + 1) = MyTable.Rows(i).Cells(j).innerText
                End If
            Next
        Next
    Next
    
    Range("B2:F16").NumberFormat = "#.00"
    Range("B20:F22").NumberFormat = "#,##0.0000"
    Range("F2:F22").NumberFormat = "hh:mm;@"
    Range("E2:E22").NumberFormat = "@"
End Sub
 
Dosya revize edilmiş olup, ücretli olarak temin etmek isteyenler özel mesajla irtibata geçebilir...





.
 
Geri
Üst