IT翻訳者の疑問

この業界に入って約20年。私の疑問は相変わらず解決しません。

「それ」を使わずに訳すには

デザイン時に文書にホスト コントロールを追加した場合は、それを実行時にプログラムで削除しないでください。次にコード内でコントロールを使用すると、例外がスローされます。
出典:http://msdn2.microsoft.com/ja-jp/library/9z4e3456(VS.80).aspx

原文では次のように書かれています。

If you add a host control to a document at design time, you should not remove it programmatically at run time because the next time you try to use the control in code, an exception is thrown.
出典:http://msdn2.microsoft.com/en-us/library/9z4e3456(VS.80).aspx

「それ」や「それらの」といった指示代名詞は、何を指しているかがあいまいになるので多用を避けるようにというのはよく言われていることです。原文でitやtheyが使われているのだから訳文でも「それ」や「それらの」でいいだろうという主張が聞こえてきそうですが、そういう訳文に限って、肝心なときに「それ」が抜けているんですよね。「次にコード内でコントロールを使用」の「コントロール」は文書に追加されたホストコントロールのことなので、ここは「コントロール」の前に「その」が必要です。tryの訳出を省いたのも謎ですね。削除されてしまっているのだから、使用することは不可能なのですが。たぶん、訳文の見直しのときに「訳文だけ読んで理解できるかどうかをチェックする」という作業をしていないのでしょう。原文がIfで始まっているからといって、訳文でも「〜場合は」という形式にしなければならないということはないので、私なら

デザイン時に文書に追加したホスト コントロールを、プログラムで実行時に削除しないでください。次回コード内でそのコントロールを使用しようとしたときに、例外がスローされるからです。

などと修正します。
上記の文章に続く文章でも、

デザイン時に作成されたホスト コントロールの Delete メソッドを呼び出すと、例外がスローされます。たとえば、Bookmark1.Delete は、Bookmark1 がプログラムを通じて文書に追加された場合のみ、これを正しく削除します。

「これを」という指示代名詞が使われていますが、「これ」が何だかよくわからないので読んでいてイライラします。原文では

If you call the Delete method of a host control that was created at design time, an exception is thrown. For example, Bookmark1.Delete only successfully deletes Bookmark1 if it was programmatically added to the document.

となっていますが、2番目の文章は、そのまま「たとえば、Bookmark1.DeleteによってBookmark1が正しく削除されるのは、このコントロールがプログラムで文書に追加されたものである場合のみです」と訳せばよいと思います。