BLOG記事

ブログ記事

先日、翻訳会社のチェッカーさんから翻訳のフィードバックがありました。いくつかご提案をいただいたのですが、その中で翻訳文と原文を二つのスクリーンで(並べて)数字を色を使ってチェックすることを検討してみてはどうかと言うのがありました。翻訳会社では製品Wordマクロを使用して数字チェックしているとのことですが、簡単なワードマクロを自作しました。

数字(1,2,3、1、2、3等)だけでなく、英語の序数(first, second, third 等)や数(one, two, three等)や漢字(一、二、三等)も数字と対応させてチェックできる様にしました。この機能は現在のTrados StudioやMemsourceのQAチェックでもできないので、それを補完するものになるかもしれません。

実際のマクロの実行画面です。

コードを以下に示します。

Sub NumberColorChange()

'Oの場合は黄色



Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "0"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdYellow
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "zero"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdYellow
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "0"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdYellow
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "ゼロ"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdYellow
     Loop

'1の場合は赤

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "1"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdRed
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "one"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdRed
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "first"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdRed
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "1"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdRed
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "一"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdRed
     Loop


'2の場合は青

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "2"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBlue
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "two"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBlue
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "second"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBlue
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "2"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBlue
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "二"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBlue
     Loop


'3の場合はピンク



Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "3"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdPink
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "three"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdPink
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "third"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdPink
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "3"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdPink
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "三"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdPink
     Loop


'4の場合は水色

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "4"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTurquoise
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "four"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTurquoise
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "fourth"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTurquoise
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "4"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTurquoise
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "四"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTurquoise
     Loop


'5の場合は紫

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "5"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdViolet
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "five"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdViolet
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "fifth"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdViolet
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "5"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdViolet
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "五"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdViolet
     Loop

'6の場合は明るい緑

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "6"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBrightGreen
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "six"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBrightGreen
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "sixth"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBrightGreen
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "6"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBrightGreen
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "六"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdBrightGreen
     Loop


'7の場合は濃い青


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "7"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkBlue
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "seven"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkBlue
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "seventh"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkBlue
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "7"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkBlue
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "七"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkBlue
     Loop


'8の場合は濃い黄色

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "8"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkYellow
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "eight"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkYellow
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "eighth"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkYellow
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "8"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkYellow
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "八"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdDarkYellow
     Loop


'9の場合は青緑

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "9"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTeal
     Loop


Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "nine"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTeal
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "ninth"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTeal
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "9"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTeal
     Loop

Set rng = ActiveDocument.Range(0, 0)
     rng.Find.Text = "九"
       
     Do While rng.Find.Execute = True
          rng.HighlightColorIndex = wdTeal
     Loop




End Sub

翻訳での数字チェックの方法(Trados Studioの場合)

Tradosの数字チェックでは英語と一体となった数字(12a, 12b等)のチェックができないのと、英語になった序数等(first, second, one, two等)もチェックでは弾かれてしまいます。

翻訳での数字チェックの方法(Memsourceの場合)

Memsourceでは英語と一体となった数字(12a、12b等)も分離して処理してくれますが、やはり英語となった序数等(first, second, one, two等)はチェックで弾かれてしまいます。

翻訳での数字チェックの方法(FUGOの場合)

FUGOの場合、原文そのものの部品名の符号に重複(エラー)がある際に、特に有用です。TradosやMemsourceのチェックと合わせて二重チェックすると原文の内容エラーも検出してくれるので、特にパリルートの米国出願では重宝します。

翻訳での数字チェックの方法(自作ワードマクロの場合)

実際の翻訳ではこれらを組み合わせて数字のエラーをチェックします。それでもエラーが出てしまうのは能力不足というか不思議というしかありませんが、最大限ケアレスミスをなくす努力はするべきでしょう。

関連記事一覧