作成中のマクロに問題があります。エクスポート ファイルをデータベース (用語集) から別のタグ構造に変換して、別のデータベースにインポートできるようにする必要があります。
ほとんどすべての手順を実行しましたが、次のことを行うのに問題があります。ほとんどのエントリはバイリンガルです。ただし、一部のエントリには複数の値 (最大 3 つ) の英語エントリがあります。
したがって、タグのシーケンスを確認し、二重の英語エントリが見つかった場合は、2 つのエントリに変換する必要があります。これで完了です。
問題は、マクロが「正しい」エントリを見つけた場合でも、それを無視して次のエントリにジャンプするのではなく、間違っているかのように変更しようとすることです。
マクロコードは次のとおりです。
Sub CheckTagSequence()
'DECLARATION OF VARIABLES
Dim textline As String
Dim SourceLang, TargetLang, EntryID As String
Dim i As String
Dim objWdRange As String
'ASSIGNING VALUES TO THE VARIABLES
SourceLang = "<enTerm>"
TargetLang = "<frTerm>"
i = "<entry id="">"
'GO TO FIRST LINE
Selection.GoTo what:=gotoline, which:=GoToFirst
' MOVE DOWN TWO LINES
Selection.MoveDown unit:=wdLine, Count:=2
CONTINUA:
If Left(textline, 8) = i Then ID = textline
Selection.MoveDown unit:=wdLine, Count:=1
If Left(textline, 8) = "<subject" Then su = textline
Selection.MoveDown unit:=wdLine, Count:=1
If Left(textline, 8) = SourcLang Then en = textline
Selection.MoveDown unit:=wdLine, Count:=1
**If Left(textline, 8) = TargetLang Then fr = textline
Selection.MoveDown unit:=wdLine, Count:=1
If Left(textline, 8) = "</entry>" Then**
Selection.GoTo CONTINUA
ElseIf Left(textline, 8) = SourceLang Then GoTo CORREGGI
End If
CORREGGI:
Selection.MoveUp unit:=wdLine, Count:=3
Selection.HomeKey unit:=wdLine
Selection.MoveDown unit:=wdLine, Count:=2, Extend:=wdExtend
Selection.Copy
Selection.MoveDown unit:=wdLine, Count:=1
Selection.Paste
Selection.MoveDown unit:=wdLine, Count:=1
Selection.MoveDown unit:=wdLine, Count:=2, Extend:=wdExtend
Selection.Copy
Selection.MoveUp unit:=wdLine, Count:=3
Selection.HomeKey unit:=wdLine
Selection.Paste
Selection.MoveDown unit:=wdLine, Count:=1
If Left(textline, 8) = i Then GoTo CONTINUA
End Sub
次の行でブロックします。
If Left(textline, 8) = TargetLang Then fr = textline
Selection.MoveDown unit:=wdLine, Count:=1
If Left(textline, 8) = "</entry>" Then
Selection.GoTo CONTINUA
サンプルファイルの内容は次のとおりです。
<?xml version=“1.0” encoding=“UTF-8”?>
<body>
<entry id=““>
<subject>IRECRUITMENT</subject>
<enTerm>Media Relations</enTerm>
<frTerm>Relations avec les médias</frTerm>
</entry>
<entry id=““>
<subject>IRECRUITMENT</subject>
<enTerm>OCEM</enTerm>
<frTerm>Relations avec les médias</frTerm>
</entry>
<entry id=““>
<subject>IRECRUITMENT</subject>
<enTerm>STATISTICS</enTerm>
<enTerm>FIPSS</enTerm>
<frTerm>STATISTIQUES</frTerm>
</entry>
<entry id=““>
<subject>IRECRUITMENT</subject>
<enTerm>3rd Nationality</enTerm>
<frTerm>3ème nationalité</frTerm>
</entry>
<entry id=””>
<subject>IRECRUITMENT</subject>
<enTerm>FINANCE</enTerm>
<enTerm>CSSDF</enTerm>
<frTerm>FINANCES</frTerm>
</entry>
</body>
よろしくお願いします。