Note: The other languages of the website are Google-translated. Back to English
ログイン  \/ 
x
or
x
今すぐ登録  \/ 
x

or

Excelで英数字以外の文字を削除するにはどうすればよいですか?

次のようなデータの範囲があると仮定します。 JAMES0898#4%^ {}、ワークシートに英数字以外の文字が含まれているため、英数字以外の文字を削除して英数字を保持するだけです。 例えば、 JAMES0898#4%^ {} > JAMES0898。 Excelでこれらの英数字以外の文字をすばやく削除するにはどうすればよいですか?


VBAコードで英数字以外の文字を削除する

次の短いVBAコードを使用すると、英数字以外の文字も削除できます。 あなたはこれをすることができます:

1。 押す 他の + F11 一緒に鍵を開いて アプリケーション用のMicrosoftVisual Basic 窓。

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

VBA:英数字以外の文字をすべて削除します

Sub RemoveNotAlphasNotNum()
'Updateby2014128
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    xOut = ""
    For i = 1 To Len(Rng.Value)
        xTemp = Mid(Rng.Value, i, 1)
        If xTemp Like "[a-z.]" Or xTemp Like "[A-Z.]" Or xTemp Like "[0-9.]" Then
            xStr = xTemp
        Else
            xStr = ""
        End If
        xOut = xOut & xStr
    Next i
    Rng.Value = xOut
Next
End Sub

3。 押す F5 キーを押すか、 ラン ボタンを押してコードを実行します。

4。 次に、ポップアップダイアログで英数字以外のすべての文字を削除する範囲を選択し、[ OK ボタン。

これで、選択した範囲から英数字以外の文字がすべて削除されました。 スクリーンショットを参照してください:

2回クリックすると、すばらしいツールで英数字以外の文字がすべて削除されます

通常、カーソルをセルに入れてから、英数字以外の文字を2つずつ手動で削除します。 VBAまたはユーザー定義関数に精通している場合は、それをコーディングして、英数字以外のすべての文字を一括で削除できます。 しかし、ここでは、XNUMX回のクリックだけですべての種類の文字を削除できる素晴らしいツールであるKutools forExcelの文字削除機能をお勧めします! フル機能の無料トライアル30日!

ユーザー定義関数を使用して英数字以外の文字を削除する

カスタム関数を定義して、Excelのセルから英数字以外のすべての文字を削除することもできます。

1。 押す 他の + F11 一緒に鍵を開いて アプリケーション用のMicrosoftVisual Basic 窓。

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

ユーザー定義関数:英数字以外の文字をすべて削除します

Function DeleteNonAlphaNumeric(xStr As String) As String
Dim xStrR As String
Dim xCh As String

Dim xStrMode As String
Dim xInt As Integer
    xStrMode = "[A-Z.a-z 0-9]"
    xStrR = ""
    For xInt = 1 To Len(xStr)
        xCh = Mid(xStr, xInt, 1)
        If xCh Like xStrMode Then
            xStrR = xStrR & xCh
        End If
    Next
    DeleteNonAlphaNumeric = xStrR
End Function
    

3。 次に、ワークシートに戻り、空白のセルを選択して、数式を入力します = DeleteNonAlphaNumeric(B3)、次にオートフィルハンドルのダウンロードをドラッグして、この数式を他のセルに適用します。


Kutools forExcelで英数字以外の文字を削除する

上記のXNUMXつの方法では、コードを知っている必要がありますが、Excelの初心者として、私たちのほとんどはコードを使用できないため、ここでは簡単な方法を紹介します。

Kutools for Excel-Excel用の300以上の便利なツールが含まれています。 30日間のフル機能の無料トライアル、クレジットカードは必要ありません! 今すぐ入手

Kutools for Excelをインストールしている場合は、次の手順でインストールしてください。

1。 英数字以外の文字を削除する必要がある範囲を選択し、をクリックします クツール > テキスト > 文字を削除する.

2。 次に、 文字を削除する ダイアログボックスが表示されます。チェックするだけです 非英数字 オプションをクリックし、 Ok ボタン。

これで、英数字以外の文字がすべてテキスト文字列から削除されました。


関連記事:


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

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

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

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

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性が50%向上し、毎日何百ものマウスクリックが減ります。
officetab下部
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Dee · 4 years ago
    How do you remove the characters while keeping the space separator?
  • To post as a guest, your comment is unpublished.
    Mike Litoris · 7 years ago
    VBA method worked, but only works on the selected range. You cannot specify the output into a different range of cells than the input. So you must copy the source data into the target range, select the data, run the script and allow it to output to the default range. Also, the period (.) is not considered a special character, so if you want to remove those too, you'll need to search and replace.
  • To post as a guest, your comment is unpublished.
    Bryan Steven · 7 years ago
    Thanks for sharing, but still don't like the input-box method... :D