VBA - Başka Worksheet'te Replacement

Katılım
28 Kasım 2022
Mesajlar
14
Excel Vers. ve Dili
Excel 2016 - İngilizce
Merhaba,

Sub Veri()
------------
-----------------
-------------------
End Sub

Sub Degistir()

Sheets("data").Range("B2:J500").Select
Selection.Replace what:="A/D", replacement:="-"

End Sub

Sub Veri_Al ()
Call Veri
Call Degistir
End Sub

Ana Sayfa Sheet'inde şu şekilde bir fonksiyon yazdım. Data sheet'ine verileri çekip düzenlemek istiyorum. Hem Veri hem de Degistir fonksiyonlarım ayrı ayrı çalışıyor fakat Veri_Al fonksiyonunu çalıştırdığımda verileri çekebilmeme rağmen replacement gerçekleşmiyor. Bunu nasıl çözebilirim?
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,354
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,
Paylaşım sitelerinden birine örnek dosyanızı ve kodlar ile birlikte ekleyin.
Kodlar incelendiğinde anca anlaşılır.
 
Katılım
28 Kasım 2022
Mesajlar
14
Excel Vers. ve Dili
Excel 2016 - İngilizce
Necdet Bey merhaba,
Dosyayı ekleyemedim fakat kod bu şekildedir.

Option Explicit

Sub Veri()

Dim fiyat As New Selenium.WebDriver, Veri As TableElement, aralik As Range

Application.ScreenUpdating = False

fiyat.Start "chrome"

fiyat.Get "https://www.isyatirim.com.tr/tr-tr/analiz/hisse/Sayfalar/Temel-Degerler-Ve-Oranlar.aspx#page-5"
Set Veri= fiyat.FindElementByXPath("/html/body/form/div[4]/div/div[2]/div/div/div[1]/div/div[3]/div[2]/div/div/div[1]/div/div/div[2]/div[2]/div[5]/div[2]/div/div[1]/div[2]/div[2]/table").AsTable
Veri.ToExcel Sheets("data").Range("A1")

fiyat.Get "https://www.isyatirim.com.tr/tr-tr/analiz/hisse/Sayfalar/Temel-Degerler-Ve-Oranlar.aspx#page-6"
Set Veri = fiyat.FindElementByXPath("/html/body/form/div[4]/div/div[2]/div/div/div[1]/div/div[3]/div[2]/div/div/div[1]/div/div/div[2]/div[2]/div[6]/div/div/div[2]/div/div[1]/div[2]/div[2]/table").AsTable
Veri.ToExcel Sheets("data").Range("G1")

Sheets("data").Range("I1:L500").Cut Destination:=Sheets("data").Range("G1")

For Each aralik In Sheets("data").Range("B2:J500")

If Not IsEmpty(aralik) And IsNumeric(aralik.Value) Then

aralik.Value = CDbl(aralik.Value)

End If

Next aralik

End Sub

Sub Degistir()
Sheets("data").Range("B2:J500").Select

Selection.Replace what:="A/D", replacement:="-"
End Sub

Sub Finansal_Oranlar()
Call Veri
Call Degistir
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,160
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Böyle bir deneyiniz.

C++:
Sub Degistir()
Sheets("data").Range("B2:J500").Replace what:="A/D", replacement:="-"
End Sub
 
Katılım
28 Kasım 2022
Mesajlar
14
Excel Vers. ve Dili
Excel 2016 - İngilizce
Bu şekilde yapınca sorun çözüldü, çok teşekkür ederim.
 
Üst