2

選択したテーブルのタブ文字をクリアするように設計された小さなマクロがあります。

それは私にとって期待どおりに機能します。ただし、それを要求したユーザーは、ドキュメント全体のタブが消去されたと報告しています (実際には、MSWord でタブを使用することはお勧めしないため、悪くはありません..)

私は、より経験豊富なマクロ作成者が小さなマクロを調べて、それが設計されたとおりに機能することを確認できることを望んでいました (および私が確認したこと)。

Sub RemoveTabs()
Selection.Tables(this).Select
With Selection
    .Find.Text = Chr(9)
    .Find.Replacement.Text = ""
    .Find.Execute Replace:=wdReplaceAll
End With
End Sub

前もって感謝します :)

4

2 に答える 2

1

あなたのコードはスペースを完全に削除します。

""" "と等しくないchr(32)

安全のために、コードを次のように変更してください

Sub RemoveTabs()
    Selection.Tables(this).Select
    With Selection
        .Find.Text = Chr(9)
        .Find.Replacement.Text = Chr(32)
        .Find.Execute Replace:=wdReplaceAll
    End With
End Sub

そして、あなたは行ってもいいです!


CTRLテーブルを挿入し、 +で区切られた 2 つの単語を入力して動作を再現しましたTAB

ここに画像の説明を入力

次に、元のコードを実行して取得しました:

ここに画像の説明を入力

だから私はタブをもう一度挿入し、変更した後

.Find.Replacement.Text = ""

.Find.Replacement.Text = Chr(32)

また

.Find.Replacement.Text = " "

それはうまくいきました!

ここに画像の説明を入力

于 2013-09-05T15:57:08.780 に答える