Need function in excel for translation

October 5, 2010 at 02:38:03
Specs: Windows XP
I ask if there is any function in excel it can be used for translation some data in other sells

See More: Need function in excel for translation

Report •

October 5, 2010 at 03:47:09
You'll need to explain what you mean by "translation".

If you could include some examples of input data and output data, that would help.

Report •

October 5, 2010 at 04:00:11
Thank you for your reply

Please find the examples of input data and output data in that table
Word in English Required the Arabic Translation
Account in red

Report •

October 5, 2010 at 13:00:29
In Excel 2007 and Word 2007 there is a translation option.
On the Ribbon,
Click on Review
Select Translate

From a quick once over, you can select your language, and Arabic is an option.

In Excel you can apparently only translate one cell at a time, as I was unable to get it to translate more than one cell, although you can have multiple words in the cell.

In Word you can highlight an entire paragraph and it will translate it.

I would suggest Word is a better option for your lists.


Report •

Related Solutions

October 5, 2010 at 21:27:29
Thank you every body
I Found Code and function it can do what I need
and the below is the Code

Public Function translate(textToBeTranslated As String, resultLanguageCode As String, Optional sourceLanguageCode As String = "") As String

'Translates given text with Google Translate
'Supported languages can be found here:
'If source language is omitted, Google Translate tries to detect it automatically
'Function created by Mikael Thuneberg. Code for non-ASCII character encoding picked from a procedure by alexspi (

Dim objhttp As Object
Dim URL As String

Dim i As Integer
Dim iAsc As Long
Dim sAsc As String
Dim sTemp As String

Dim objStream As Object
Dim data() As Byte
Dim ByteArrayToEncode() As Byte

Set objStream = CreateObject("ADODB.Stream")
objStream.Charset = "utf-8"
objStream.Mode = 3
objStream.Type = 2
objStream.WriteText textToBeTranslated
objStream.Position = 0
objStream.Type = 1
objStream.Read 3
data = objStream.Read()
ByteArrayToEncode = data

textToBeTranslated = ""

For i = 0 To UBound(ByteArrayToEncode)
iAsc = ByteArrayToEncode(i)
Select Case iAsc
Case 32 'space
sTemp = "+"
Case 48 To 57, 65 To 90, 97 To 122
sTemp = Chr(ByteArrayToEncode(i))
Case Else
Debug.Print iAsc
sTemp = "%" & Hex(iAsc)
End Select
textToBeTranslated = textToBeTranslated & sTemp

Set objhttp = CreateObject("MSXML2.ServerXMLHTTP")
URL = "" & textToBeTranslated & "&langpair=" & sourceLanguageCode & "%7C" & resultLanguageCode
objhttp.Open "GET", URL, False
objhttp.setTimeouts 1000000, 1000000, 1000000, 1000000
objhttp.send ("")

translate = objhttp.responseText
translate = Right(translate, Len(translate) - InStr(1, translate, "translatedText") - 16)
translate = Left(Left(translate, InStr(1, translate, Chr(34)) - 1), 255)
translate = Replace(translate, "quot;", Chr(39))
If translate = " null, " Then translate = "Language not found"

End Function


and this is my E-mail I can Send copy of Excil file

edited by moderator: email address removed

Report •

October 6, 2010 at 04:08:18
I'm glad you found a solution.

I have removed your email address from your post.

You should never post your email address in a public forum such as this. We do not want to be known as a site where spammers can harvest email addresses.

If you want to give your email address to a specific member, send it via the Private Message feature of this site.

Office Forum Moderator

Report •

October 6, 2010 at 04:09:20

Nice one! I really need to play with my Excel 2010 a bit more! ;-)

Report •

Ask Question