Traduction

Bonjour,

J'ai comme passetemps le weekend la traduction de visual novel.

J'ai cherché comment extraire le texte du code et le réintégrer c'est ainsi que j'ai découvert la méthode REGEX

J'ai créé une macro avec actionna pour mon éditeur de texte (notepad++) le problème c'est que c'est super lent.

Donc je me suis dit pourquoi pas sous excel Vba mais je me suis rendu compte après coup que c’était compliquer

exemple de code:

# p "Let's try to go back to sleep, I need to get some rest."

p "Let's try to go back to sleep, I need to get some rest."

# game/script.rpy:4403 translate french homenightd5_864be394:

# "You managed to sleep 5 hours that night."

"You managed to sleep 5 hours that night."

En bleu ce que je dois traduire

Premier problème: quand je colle mon texte les " en début de cellule se supprimes donc j'ai remplacer les " par ¤ avant de coller

Deuxième problème: je voudrai coller mon texte en A:A feuille 1et extraire avec un REGEX en A:A feuille 2 le traduire et le le réimporter en A:A feuille 1

En espérant qu'une bonne âme puise m'aider

Bonjour,

J'ai l'impression que tu te compliques bien la vie ...

As-tu jeté un oeil sur toutes les discussions similaires à la tienne ...???

A titre d'exemple ... parlons Chinois ...

https://forum.excel-pratique.com/viewtopic.php?f=2&t=52052

En espèrant que cela t'aide

Non je veut pas que Google traduise je veut traduire moi même en gros avoir un texte clair sans code

Bonjour paulo50,

Voyez si la solution proposée dans le fichier joint peut vous aider

5paulo50.xlsx (7.78 Ko)

Non je veut pas que Google traduise je veut traduire moi même en gros avoir un texte clair sans code

Non je ne veux pas que Google traduise, je veux traduire moi-même en gros, avoir un texte clair sans code

De rien ...

Bonne Traduction ...

bien vue

non c'est plus un truc comme ça qu'il me faut

4paulo50.xlsx (18.87 Ko)

Désolé, je ne touche pas aux macros, pas le niveau

bien vue

bien vu

Pourtant là ... il n'y avait que deux mots ...

voila j'ai un peu avancer mais je suis en panne avec l'erreur 1004 que je n'arrive pas a solutionner

4trad.xlsm (55.77 Ko)

c'est bon j'ai trouver finalement il n'y avait pas les cellules vide en A:A

5trad.xlsm (55.78 Ko)

je coince de nouveau

je m'explique quand je décompile j ai le module 1 qui doit remplacer " par ¤ mais le soucie viens quand j' ai plusieurs " dans une phrase

Si quelqu'un a la solution sa serait sympas

Sub hash()
 Dim regEx As New RegExp
    Dim strPattern As String
    Dim strInput As String
    Dim Myrange As Range
    Dim nbligne As Integer
With ThisWorkbook.Sheets("texte").Range("A:A")
'.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With
    nbLignes = Sheets("texte").Cells(Rows.Count, "A").End(xlUp).Row

    Set Myrange = ActiveSheet.Range("A1:A" & nbLignes)

    For Each c In Myrange
        strPattern = "(#.+)("")(.+)("")"

        If strPattern <> "" Then
            strInput = c.Value

            With regEx
                .Global = True
                .MultiLine = True
                .IgnoreCase = False
                .Pattern = strPattern
            End With

            If regEx.test(strInput) Then
               c.Value = regEx.Replace(strInput, "$1" & "¤" & "$3" & "¤")

            End If

        End If

    Next

End Sub
3tradencour.xlsm (56.62 Ko)

trouver finalement

Sub hash()
 Dim regEx As New RegExp
    Dim strPattern As String
    Dim strInput As String
    Dim Myrange As Range
    Dim nbligne As Integer
With ThisWorkbook.Sheets("texte").Range("A:A")
'.SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End With
    nbLignes = Sheets("texte").Cells(Rows.Count, "A").End(xlUp).Row

    Set Myrange = ActiveSheet.Range("A1:A" & nbLignes)

    For Each c In Myrange
        strPattern = "(#.+)("")(.+)("")"

        If strPattern <> "" Then
            strInput = c.Value

            With regEx
                .Global = True
                .MultiLine = True
                .IgnoreCase = False
                .Pattern = strPattern
            End With

            If regEx.test(strInput) Then
               c.Value = Replace(strInput, """", "¤")

            End If

        End If

    Next

End Sub

j'apprend

Rechercher des sujets similaires à "traduction"