2

一部の doc ファイルで日付の形式を変更するには、助けが必要です。ルーマニア語のさまざまな日付を置き換えるページが何百もありますが、実際には日付の前のスラッシュだけを置き換える必要があります。もっと簡単な方法はありますか? このようなすべての日付を置き換えるためのマクロ

何かのようなもの:

「nr. 313/17 noiembrie 2011」を「nr. 313 din 17 noiembrie 2011」に置き換える必要があります

"2012 年 4 月 15 日" -> "2012 年 4 月 3 日 15 日"

"2012 年 4 月 27 日" -> "2012 年 4 月 3 日 27 日"

数字の間のスラッシュ「/」を「din」という単語に置き換える必要があります(前後にスペースがあります)

Ⅱ.スラッシュを「din」という単語に置き換えてはならない「art. 385/15」のようなテキストに他の形式があるため、置換にも注意する必要があります。

これは、私が答えを見つけていない別の問題です。

                
「art. 15/2」 - 「art. 15 2」

「art. 27/12」 - 「art. 27 12」

「art. 385/19」 - 「art. 385 19
  • 「/2」、「/12」、「/19」は上付き文字のみに置き換える必要があり、スラッシュは削除する必要があります。テキストにはこのような記事がたくさんあり、置き換えなければなりません...そしてマクロが役に立ちますより速く、より良い仕事をする

2つの問題を解決する方法はありますか?(Word 2007 と 2010 を使用)

4

1 に答える 1

1

OP は、[number/number] の他のケースに影響を与えずに、「15/3 aprilie」という形式の日付文字列を「15 din 3 aprilie」に変更するよう求めます。これは、12 か月ごとに 12 回実行されるワイルドカードの検索と置換操作で実行できます。

単一の検索と置換操作を含むコア ルーチンは、次のとおりです。

     Sub replacemonth(month As String)

            With ActiveDocument.Range.Find
                .ClearFormatting
                .Text = "([0-9]{1,3})/([0-9]{1,3} " + month + ")"
                .Replacement.ClearFormatting
                .Replacement.Text = "\1 din \2"
                .Forward = True
                .Wrap = wdFindStop
                .Format = False
                .MatchCase = False
                .MatchWholeWord = False
                .MatchWildcards = True
                .Execute Replace:=wdReplaceAll
            End With

    End Sub

次に、この 2 番目のルーチンは、月ごとにルーチンを実行します。

 Sub ReplaceDates()
       replacemonth ("ianuarie")
       replacemonth ("februarie")
       replacemonth ("martie")
       replacemonth ("aprilie")
       replacemonth ("mai")
       replacemonth ("iunie")
       replacemonth ("iulie")
       replacemonth ("august")
       replacemonth ("septembrie")
       replacemonth ("octombrie")
       replacemonth ("noiembrie")
       replacemonth ("decembrie")
End Sub

これらの両方をマクロ エディターに入力し、2 番目のマクロ (ReplaceDates) を実行すると、指定したすべての日付が置き換えられます。

検索ルーチンは、スラッシュの両側の数字が 3 桁までの長さであることを前提としています (元の投稿の最初の例のように)。その番号は、検索文字列で必要に応じて簡単に変更できます。

于 2012-09-07T01:58:09.967 に答える