Tercume yapan bır makrom var. Bır kere calıstı tekrar calısmadı.

Katılım
6 Ekim 2020
Mesajlar
4
Excel Vers. ve Dili
2016 - Türkçe ve İngilizce
Option Explicit

Public Sub testTranslate()

Dim ws As Worksheet

Set ws = ThisWorkbook.Worksheets("Sayfa2")
ws.Cells.Delete

ws.Range("A1") = ("Input")
ws.Range("B1") = "Output"
ws.Range("A2") = "Welcome! What a lovely morning, isn't it?"

ws.Range("B2") = Translate(Range("A2"), "en", "es")
ws.Range("A2:B2").Columns.AutoFit


End Sub


Public Function Translate(strInput As String, strFromSourceLanguage As String, strToTargetLanguage As String) As String
Dim strURL As String
Dim objHTTP As Object
Dim objHTML As Object
Dim objDivs As Object, objDiv As Object
Dim strTranslated As String

' send query to web page
strURL = "https://translate.google.com/m?hl=" & strFromSourceLanguage & _
"&sl=" & strFromSourceLanguage & _
"&tl=" & strToTargetLanguage & _
"&ie=UTF-8&prev=_m&q=" & strInput

Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP") 'late binding
objHTTP.Open "GET", strURL, False
objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
objHTTP.send ""

' create an html document
Set objHTML = CreateObject("htmlfile")
With objHTML
.Open
.Write objHTTP.responsetext
.Close
End With

'Range("H1") = objHTTP.responsetext

Set objDivs = objHTML.getElementsByTagName("div")

For Each objDiv In objDivs

If objDiv.className = "t0" Then
strTranslated = objDiv.innerText
Translate = strTranslated
End If

Next objDiv



Set objHTML = Nothing
Set objHTTP = Nothing

End Function


Not: makro alıntıdır.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
5,806
Excel Vers. ve Dili
2019 Türkçe
Merhaba.
Herhangi bir sıkıntı yok çalışıyor.

"testTranslate " prosedürü içindeki satırlardan biri seçiliyken F5 tuşuna basın.
Bu kodların olduğu dosyada "Sayfa2" adlı bir sayfanın olması gerekir.
Yada kodlarda "Sayfa2" yazan kısmı dosyanızda var olan bir sayfa adı ile değiştirmelisiniz.
 
Katılım
6 Ekim 2020
Mesajlar
4
Excel Vers. ve Dili
2016 - Türkçe ve İngilizce
Merhaba.
Herhangi bir sıkıntı yok çalışıyor.

"testTranslate " prosedürü içindeki satırlardan biri seçiliyken F5 tuşuna basın.
Bu kodların olduğu dosyada "Sayfa2" adlı bir sayfanın olması gerekir.
Yada kodlarda "Sayfa2" yazan kısmı dosyanızda var olan bir sayfa adı ile değiştirmelisiniz.
Teşekürler, aynı dediğiniz gibi.
 
Üst