Note: The other languages of the website are Google-translated. Back to English

テキストを見つけて置換し、Excelで書式を保持するにはどうすればよいですか?

doc find replace save format 1
doc find replace save format 2
検索と置換機能は、特定の値を見つけて別の値に置き換える必要がある場合に強力で役立ちます。 ただし、セルの範囲があり、一部のセルに異なる書式値が含まれている場合。 この場合、検索と置換機能によって値を検索して置換すると、下のスクリーンショットに示すようにセル内の値のフォーマットが壊れます。Excelで検索して置換するときに、各セルの値のフォーマットを保持するにはどうすればよいですか?

保存フォーマットを検索してマクロコードに置き換えます

矢印青い右バブル 保存フォーマットを検索してマクロコードに置き換えます

他に方法はありませんが、マクロコードを使用すると、テキストを検索して置換し、書式を保持することができます。

1。 押す Altキー+ F11 キーを押して アプリケーション用 Microsoft Visual Basic 窓。

2。 クリック インセット > モジュール、以下のコードをスクリプトに貼り付けます。

VBA:保存フォーマットを検索して置換

Sub CharactersReplace(Rng As Range, FindText As String, ReplaceText As String, Optional MatchCase As Boolean = False)
  'UpdatebyExtendoffice20160711
    Dim I As Long
    Dim xLenFind As Long
    Dim xLenRep As Long
    Dim K As Long
    Dim xValue As String
    Dim M As Long
    Dim xCell As Range
    xLenFind = Len(FindText)
    xLenRep = Len(ReplaceText)
    If Not MatchCase Then M = 1
    For Each xCell In Rng
        If VarType(xCell) = vbString Then
            xValue = xCell.Value
            K = 0
            For I = 1 To Len(xValue)
              If StrComp(Mid$(xValue, I, xLenFind), FindText, M) = 0 Then
                xCell.Characters(I + K, xLenFind).Insert ReplaceText
                K = K + xLenRep - xLenFind
              End If
            Next
        End If
    Next
End Sub

Sub Test_CharactersReplace()
    Dim xRg As Range
    Dim xTxt As String
    Dim xCell As Range
    On Error Resume Next
    If ActiveWindow.RangeSelection.Count > 1 Then
      xTxt = ActiveWindow.RangeSelection.AddressLocal
    Else
      xTxt = ActiveSheet.UsedRange.AddressLocal
    End If
    Set xRg = Application.InputBox("Select a range:", "Kutools for Excel", xTxt, , , , , 8)
    If xRg Is Nothing Then Exit Sub
    Call CharactersReplace(xRg, "KK", "Kutools", True)
End Sub

 

doc find replace save format 5

3。 押す F5 キーを押すと、検索して置き換える範囲を選択するためのダイアログが表示されます。スクリーンショットを参照してください。
doc find replace save format 6

4. [OK]をクリックすると、選択したセルの特定の文字列が他の文字列に置き換えられ、書式が保持されます。
doc find replace save format 4

先端:コードでは、  KK 見つけたい文字列であり、 クツール は置き換えたい文字列です。必要に応じて変更できます。


最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300 以上の強力な機能. Office / Excel 2007-2021 および 365 をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 フル機能の 30 日間無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!
officetab下部
コメントを並べ替える
コメント (5)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
私は255文字を超える長さのセルでソリューションを試しましたが、何も変わりません。 この場合の回避策はありますか?
このコメントは、サイトのモデレーターによって最小化されました
VBAで構文エラーが発生します
このコメントは、サイトのモデレーターによって最小化されました
John Birkと同じ質問ですが、255を超える符号を持つセルを使用した回避策が必要です。
このコメントは、サイトのモデレーターによって最小化されました
このメソッドは、255桁未満の文字でのみ機能します。
このコメントは、サイトのモデレーターによって最小化されました
255文字を超えるセルで機能するソリューションがあるかどうか、またはこれがExcelの制限であるかどうかを明確にできますか? アドインは、書式設定を含む255文字を超えるセルをサポートしていますか?
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所

フォローする

著作権©の2009 - WWW。extendoffice.com。 | | 全著作権所有。 搭載 ExtendOffice。 | サイトマップ
MicrosoftおよびOfficeのロゴは、米国MicrosoftCorporationの米国およびその他の国における商標または登録商標です。
SectigoSSLで保護