Notifications
Clear all

Fórmula ou função para mostrar qual é o idioma de uma coluna

4 Posts
4 Usuários
0 Reactions
1,686 Visualizações
(@rodrosa)
Posts: 4
New Member
Topic starter
 

Boa noite Pessoal,

Tenho um planilha com várias linhas com palavras em Português, Inglês, Italiano e Francês. Existe alguma fórmula ou função que possa mostrar como resultado o idioma daquela palavra ou frase? As palavras nas linhas não se misturam, ou seja, cada linha tem uma palavra/ de apenas um idioma.

Por exemplo, na linha B3 eu Tenho o titulo: Coisa do Destino, gostaria de colocar na coluna C3 o idioma, que no caso é o Português. Como tenho 13.000 linhas, não queria fazer isso manualmente.

Obrigado,

Rodrigo Rosa.

 
Postado : 11/04/2017 4:50 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Nativo do Excel, que eu conheça, não existe. Deve ser desenvolvido, porem acarretará em montar dicionários linguísticos, uma sugestão e tentar utilizar uma consulta a algum tradutor na internet, tipo Google Tradutor, que tenta identificar o idioma para a tradução, porem não sei se é factível.

Cross Guru https://gurudoexcel.com/forum/posting.php?mode=reply&f=7&t=4493

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 12/04/2017 1:03 pm
Basole
(@basole)
Posts: 487
Reputable Member
 

Você pode abrir sua planilha no Google Spreadsheets e usar a função DETECTLANGUAGE para fazer isso, em seguida, copie os resultados e cole novamente para o Excel.

https://bazroberts.wordpress.com/2016/11/23/google-sheets-functions-googletranslate-detectlanguage/

O resultado conforme o seu exemplo, será: "pt"

Ai voce pode usar esta Udf para converter de "pt" para "Portuguese" . na celula C2 por exemplo, voce insere = GetLanguageIds(B2)

Function GetLanguageIds(strLang As String) As String
    Dim strLangIds              As String
    Dim arrLangIds              As Variant
    Dim strId                   As String
    Dim intLoop                 As Integer

    strLangIds = "Afrikaans - af,Albanian - sq,Arabic - ar,Armenian - hy,Azerbaijani - az,Basque - eu,Belarusian - be,Bengali - bn,Bulgarian - bg,Catalan - ca,Chinese - zh-CN,Croatian - hr,Czech - cs,Danish - da,Dutch - nl,English - en,Esperanto - eo,Estonian - et,Filipino - tl,Finnish - fi,French - fr,Galician - gl,Georgian - ka,German - de,Greek - el,Gujarati - gu,Haitian Creole - ht,Hebrew - iw,Hindi - hi,Hungarian - hu,Icelandic - is,Indonesian - id,Irish - ga,Italian - it,Japanese - ja,Kannada - kn,Korean - ko,Latin - la,Latvian - lv,Lithuanian - lt,Macedonian - mk,Malay - ms,Maltese - mt,Norwegian - no,Persian - fa,Polish - pl,Portuguese - pt,Romanian - ro,Russian - ru,Serbian - sr,Slovak - sk,Slovenian - sl,Spanish - es,Swahili - sw,Swedish - sv,Tamil - ta,Telugu - te,Thai - th,Turkish - tr,Ukrainian - uk,Urdu - ur,Vietnamese - vi,Welsh - cy,Yiddish - yi"

    arrLangIds = Split(strLangIds, ",")

    For intLoop = LBound(arrLangIds) To UBound(arrLangIds)
        If Split(arrLangIds(intLoop), " - ")(1) = strLang Then
            strId = Split(arrLangIds(intLoop), " - ")(0)
            Exit For
        End If
    Next intLoop

    GetLanguageIds = strId
    Erase arrLangIds
End Function

Outra dica é alterar a Udf traduzindo cada linguagem, no caso de "Portuguese - pt" altere para "Português - pt" e assim com os outros idiomas

Click em se a resposta foi util!

 
Postado : 12/04/2017 3:53 pm
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Poha, Basole, matou a pau com essa dica. Muito boa mesmo 8-) !

 
Postado : 12/04/2017 5:41 pm