TOP

LibreOffice Calc의 Google 번역

설명

LibreOffice Calc 프로그램의 표준 기능에는 텍스트를 다른 언어로 번역하는 기능이 포함되어 있지 않습니다. 그러나 모든 사용자는 이러한 기능을 독립적으로 만들 수 있습니다.

이 문서에서는 모든 워크시트의 셀에 있는 텍스트를 직접 번역할 수 있는 GoogleTranslate_YouLibreCalc() 맞춤 함수를 살펴보겠습니다.

텍스트 번역의 경우 이 기능은 "Google 번역" 사이트를 사용하며 독립적으로 또는 다른 표준 기능과 함께 모든 수식에서 사용할 수 있습니다.



BASIC Google 번역 기능용 코드

Google 번역 기능을 추가하려면 Tools - Macros - Edit Macros... 메뉴를 열고 Module1을 선택한 후 다음 텍스트를 모듈에 복사하세요.

Option VBASupport 1

Function GoogleTranslate_YouLibreCalc(TextToTranslate As String, SrcLang As String, TrgLang As String)
  ' moonexcel.com.ua 
  Dim FCalc      As Object
  Dim WebsiteURL As String  
  Dim XMLHTTP    As Object
  Dim oHTML      As Object
  Dim HTMLDoc    As HTMLDocument
  Dim ObjClass   As Object
    
  FCalc = CreateUnoService("com.sun.star.sheet.FunctionAccess") 
  TextToTranslate =  FCalc.callFunction("ENCODEURL", Array(TextToTranslate))
  
  SrcLang = LCase(SrcLang)
  TrgLang = LCase(TrgLang)
  
  IF SrcLang = "zh-cn" Then SrcLang = "zh-CN"
  IF SrcLang = "zh-tw" Then SrcLang = "zh-TW"
  
  IF TrgLang = "zh-cn" Then TrgLang = "zh-CN"
  IF TrgLang = "zh-tw" Then TrgLang = "zh-TW" 
    
  WebsiteURL = "https://translate.google.com/m?sl=" + SrcLang + "&tl=" + TrgLang + "&hl=en&q=" + TextToTranslate
    
  ' AJAX 요청을 사용하여 웹 서버에 대한 API 호출을 실행합니다. 
  Set XMLHTTP = CreateObject("MSXML2.ServerXMLHTTP")
 
  XMLHTTP.Open "GET", WebsiteURL, False  
  XMLHTTP.Send
 
  ' AJAX 요청의 응답 텍스트를 사용하여 HTML 문서를 만듭니다. 
  Set oHTML = CreateObject("HTMLFile")
  With oHTML
        .Open
        .Write XMLHTTP.responseText
        .Close
  End With
  
  ' 웹 요소 라이브러리 Microsoft HTML Object 라이브러리를 사용하여 HTML 텍스트를 개체 모델로 변환합니다. 
  Set HTMLDoc = oHTML  
  
  Set ObjClass = HTMLDoc.getElementsByClassName("result-container").Item(0)
  If Not ObjClass Is Nothing Then
    GoogleTranslate_YouLibreCalc = ObjClass.innerText    
  End If 
 
  ' 우리는 메모리를 해제합니다 
  Set ObjClass = Nothing
  Set oHTML    = Nothing
  Set XMLHTTP  = Nothing  
End Function

그런 다음 Macro Editor을 닫고 LibreOffice Calc 워크시트로 돌아가서 아무 셀이나 선택하고 새로운 GoogleTranslate_YouLibreCalc() 함수를 사용하세요.

YouLibreCalc 확장 프로그램 사용

확장자를 설정하여 GOOGLETRANSLATE() 함수를 사용할 수도 있습니다. YouLibreCalc.oxt ". 이후에는 LibreOffice Calc에서 열리는 모든 파일에서 이 기능을 사용할 수 있습니다.