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

or

x文字ごとに特定の文字をセルに追加/挿入するにはどうすればよいですか?

次のスクリーンショットの結果を得るために、セルのXNUMX文字ごとにダッシュまたはその他の区切り文字を挿入するテキスト文字列のリストがあるとします。 特定の文字を挿入するために必要なセルが多すぎますが、ExcelでXNUMX文字ごとにダッシュを挿入する簡単な方法はありますか?

X文字ごとに特定の文字をVBAコードでセルに挿入します

Kutools for Excelを使用して、x文字ごとに特定の文字をセルに挿入します

docはすべてのx文字を挿入します1


X文字ごとに特定の文字をVBAコードでセルに挿入します

次のVBAコードを適用して、セルにXNUMX文字ごとに特定の文字を挿入できます。次のようにしてください。

1。 を押し続けます Alt + F11 Excelでキーを押すと、 アプリケーション向け Microsoft Visual Basic 窓。

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

VBAコード:x文字ごとに特定の文字をセルに挿入します

Sub InsertCharacter()
'Updateby Extendoffice
Dim Rng As Range
Dim InputRng As Range, OutRng As Range
Dim xRow As Integer
Dim xChar As String
Dim index As Integer
Dim arr As Variant
Dim xValue As String
Dim outValue As String
Dim xNum As Integer
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
xRow = Application.InputBox("Number of characters :", xTitleId, Type:=1)
xChar = Application.InputBox("Specify a character :", xTitleId, Type:=2)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set OutRng = OutRng.Range("A1")
xNum = 1
For Each Rng In InputRng
    xValue = Rng.Value
    outValue = ""
    For index = 1 To VBA.Len(xValue)
        If index Mod xRow = 0 And index <> VBA.Len(xValue) Then
            outValue = outValue + VBA.Mid(xValue, index, 1) + xChar
        Else
            outValue = outValue + VBA.Mid(xValue, index, 1)
        End If
    Next
    OutRng.Cells(xNum, 1).Value = outValue
    xNum = xNum + 1
Next
End Sub

3。 次に、 F5 このコードを実行するためのキーを押すと、テキスト文字列内に特定の文字を挿入するデータ範囲を選択するように促すプロンプトボックスが表示されます。スクリーンショットを参照してください。

docはすべてのx文字を挿入します2

4。 をクリックします OK、次のプロンプトボックスに、特定の文字を毎回挿入する番号を入力してください。スクリーンショットを参照してください。

docはすべてのx文字を挿入します3

5。 クリックしてください OK、および続くプロンプトボックスに、テキストに追加する特定の文字を入力してください。スクリーンショットを参照してください。

docはすべてのx文字を挿入します4

6に設定します。 OK をクリックします。 OK ボタンをクリックし、プロンプトボックスに結果を出力するセルをXNUMXつ選択します。スクリーンショットを参照してください。

docはすべてのx文字を挿入します5

7。 最後に、 OK、特定の文字がXNUMX文字ごとに各テキスト文字列に挿入されています。スクリーンショットを参照してください。

docはすべてのx文字を挿入します6


Kutools for Excelを使用して、x文字ごとに特定の文字をセルに挿入します

上記のコードは、ほとんどのExcel初心者にとってはやや難しいかもしれませんが、ここでは、便利なツールを紹介します- Kutools for Excelそのと テキストを追加 この機能を使用すると、セル値の前、後、または特定の位置に特定のテキストまたは文字をすばやく追加できます。

Kutools for Excel : 300以上の便利なExcelアドインがあり、30日以内に制限なしで無料で試すことができます. 

あなたがインストールしている場合 Kutools for Excel、次のようにしてください。

1。 特定の文字を挿入するデータ範囲を選択します。

2。 次に、をクリックします クツール > テキスト > テキストを追加、スクリーンショットを参照してください:

3。 の中に テキストを追加 ダイアログボックスで、挿入する文字を指定します テキスト ボックスをクリックし、 位置から指定 セクションのテキストボックスに、文字を挿入する位置を入力します。同時に、右側のペインで結果をプレビューできます。スクリーンショットを参照してください。

docはすべてのx文字を挿入します8

ヒント:ここでは、のテキストボックスに4,8,12と入力します 指定 これは、テキスト文字列の4番目、8番目、および12番目の文字の後に特定のテキストを挿入することを示します。

4. 次に、をクリックします。 Ok or お申し込み ボタンをクリックすると、指定した文字がセル値の特定の位置に挿入されます。

docはすべてのx文字を挿入します9 2 docはすべてのx文字を挿入します10

このテキストの追加ユーティリティの詳細については、ここをクリックしてください。

今すぐExcel用のKutoolsをダウンロードして無料トライアル!


デモ:Kutools for Excelを使用して、x文字ごとに特定の文字をセルに挿入します

Kutools for Excel:300以上の便利なExcelアドインがあり、30日以内に制限なしで無料で試すことができます。 今すぐダウンロードして無料トライアル!

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

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.
    anaid83 · 2 months ago
    Creo que en vez de macros, es más fácil (aunque más largo):
    1. Separar en columnas la columna A (Pestaña Datos - botón texto en columnas) y separar por Ancho fijo. Así podrás poner un separador cada 4 caracteres.
    2. Elige destino desde B2 (si lo dejas predeterminado, pisará la columna A y no podrás ver el texto original).
    3. Ahora viene lo bueno, ya que son 4 series de 4caracteres cada uno, en la columna G o H (considerando que los valores de 4 caracteres estén desde las columnas B a la F), colocarás la siguiente fórmula: =CONCATENAR(B2;"-";C2;"-";D2;"-";E2;"-";F2). Ahora copia esa celda al resto de valores por insertar el símbolo -.
    4. Finalmente, copia toda la columna de resultados y pégala en una columna vacía pero como valor de texto (Inicio-Pegar-Valores... o con las teclas ALT+O+V+V) y listo, ya tienes tus seriales listos para pegar donde quieras sin necesidad de macros.
  • To post as a guest, your comment is unpublished.
    Wuilf · 1 years ago
    Muy buena esta macro, una pregunta curiosa al momento de ejecutarla los caracteres los aplica de izquierda a derecha, puede cambiarse ese orden que de derecha a izquierda? En caso de ser posible como es el proceso? Gracias.
  • To post as a guest, your comment is unpublished.
    John · 2 years ago
    buenas noches
    necesito que me coloque el caracter cada 6, 7, 8 de un solo clic como le modifico para poder colocar mas criterios