ヒント:他の言語はGoogle翻訳されています。 訪問することができます English このリンクのバージョン。
ログイン
x
or
x
x
会員登録
x

or

セルを連結する方法は、Excelで空白を無視またはスキップしますか?

Excelの 連結する 関数は、複数のセル値を1つのセルにすばやく結合するのに役立ちます。選択したセル内に空白セルがある場合、この関数は空白も結合します。 しかし、いつかは、単にセルをデータと連結して空のセルをスキップしたいのですが、どうすればExcelでそれを終了できますか?

セルを連結して式を使用して空白を無視またはスキップする

セルを連結して、ユーザー定義関数で空白を無視またはスキップする

Kutools for Excelでセルを連結して空白をスキップするかスキップする


複数のセルを連結して空白を無視またはスキップする:

Kutools for Excel's 組み合わせる データを失うことなく複数の行、列またはセルを結合または連結できますが、ブランクセルはスキップまたは無視できます。

docはスキップブランクを結合します。7

Kutools for Excel200便利なExcelアドイン以上で、60日に制限なく試してみることができます。 今すぐダウンロードして無料トライアル!



次のようなセルデータをいくつかの空白のセルで埋め込んで1つのセルにまとめると、それを解決する式を適用できます。

docはスキップブランクを結合します。1

連結した結果を入れる空のセルにこの数式を入力し、 =A1&IF(A2<>"","-"&A2,"")&IF(A3<>"","-"&A3,"")&IF(A4<>"","-"&A4,"")&IF(A5<>"","-"&A5,"")この式を適用するセルに塗りつぶしハンドルを右にドラッグすると、次のスクリーンショットのように空白のセルなしで行の値が結合されます。

docはスキップブランクを結合します。2

ヒント:連結する必要がある行がさらにある場合は、IF関数を使用して、セルを結合する必要があります。 =A1&IF(A2<>"","-"&A2,"")&IF(A3<>"","-"&A3,"")&IF(A4<>"","-"&A4,"")&IF(A5<>"","-"&A5,"")&IF(A6<>"","-"&A6,"")。 "" 式の文字は、必要な他の区切り文字に置き換えることができます。


複数のセルが結合される必要がある場合、上記の式は実行するには複雑すぎるため、次のユーザー定義関数を使用してそれを解くことができます。

1。 押さえつける Altキー+ F11 Excelのキーを押して アプリケーション用Microsoft Visual Basic 窓。

2に設定します。 OK をクリックします。 インセット > モジュール、次のマクロを モジュール 窓。

VBAコード:セルを連結して空白を無視する:

Function Concatenatecells(ConcatArea As Range) As String
'updateby Extendoffice 20151103
  For Each n In ConcatArea: nn = IIf(n = "", nn & "", nn & n & "/"): Next
  Concatenatecells = Left(nn, Len(nn) - 1)
End Function

3。 このコードウィンドウを保存して閉じ、ワークシートに戻り、次の式を入力します。 =連結セル(A1:A5) 空白のセルに入力し、塗りつぶしハンドルをセルにドラッグしてこの数式を適用すると、次の結果が得られます。

docはスキップブランクを結合します。3

ヒント:上記のVBAコードでは、/"あなたが必要とする他の区切り文字に文字を変換します。


退屈な数式とコードを除いて、ここでは便利なツールをお勧めします。Kutools for Excel、その強力な 組み合わせる ユーティリティを使用すると、複数のセルを1つのセルに連結することができます。

Kutools for Excel : 300便利なExcelアドイン以上で、60日以内に自由に試してみてください.

インストールした後 Kutools for Excel次のようにしてください:

1。 結合するセルの値を選択します。

2に設定します。 OK をクリックします。 クツール > 組み合わせる、スクリーンショットを見る:

docはスキップブランクを結合します。4

3。 の中に 列または行を結合する ダイアログ:

  • (1。)結合する細胞のタイプを選択し、カラムを結合し、行を結合し、すべての細胞を単一細胞に結合することができます。
  • (2。)連結コンテンツの区切り文字を指定します。
  • (3。)結果を配置する場所を選択すると、その結果を上のセルまたは下のセルに配置できます。
  • (4。)結合されたセルを処理する方法を指定します。結合されたセルの内容を保持または削除したり、結合したセルをマージすることもできます。
  • docはスキップブランクを結合します。5

    4。 設定が完了したら、をクリックします。 Ok ボタンをクリックし、選択した行を別々に1つのセルに結合し、空白を自動的にスキップしました。スクリーンショットを参照してください:

    docはスキップブランクを結合します。6

    この結合機能の詳細を知りたい場合はクリックしてください...

    Excel用のKutoolsを今すぐダウンロードして無料でダウンロードできます!


    Kutools for Excel200便利なExcelアドイン以上で、60日に制限なく試してみることができます。 今すぐダウンロードして無料トライアル!


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

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

    OfficeタブはOfficeにタブ付きインターフェイスを提供し、作業をより簡単にします

    • Word、Excel、PowerPointでタブ付き編集と読み取りを有効にする、出版社、アクセス、Visioおよびプロジェクト。
    • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
    • 生産性を50%向上させ、毎日数百回のマウスクリックを削減します。
    オフィシタブ底
    Say something here...
    symbols left.
    You are guest ( Sign Up? )
    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.
      D · 4 months ago
      This worked a treat, thanks so much
    • To post as a guest, your comment is unpublished.
      Melinda · 8 months ago
      Hi, used the macro and changed the "/" to a comma "," but got a lot of commas and it appeared to add all the blank cells.
      I am doing a nested if statement to determine the appropriate sorting in the database. Is this enough to make the blank cell 'active' so that the macro sees this and adds it to the text string? How to work around that?
      thanks much
      • To post as a guest, your comment is unpublished.
        skyyang · 8 months ago
        Hello, Melinda,
        the above vba code works well in my worksheet, you just need to change the separator / to comma as below:

        Function Concatenatecells(ConcatArea As Range) As String
        'updateby Extendoffice 20151103
        For Each n In ConcatArea: nn = IIf(n = "", nn & "", nn & n & ","): Next
        Concatenatecells = Left(nn, Len(nn) - 1)
        End Function

        and then apply this formula:=concatenatecells(A1:A5)
        • To post as a guest, your comment is unpublished.
          Melinda · 8 months ago
          thanks!
          I found my problem was in the logic statement that I used to select data for these cells that I was trying to text string. I used a " " instead of "" for the false statement. That was picked up by the macro and used as a space bar and came out , , , , , text, , , ,
          So I went back and took out the space and just have the "" and then the macro worked great.
          Of course I am learning macros so that's another adventure.
          thanks much!!
    • To post as a guest, your comment is unpublished.
      Adri · 1 years ago
      Thank you, it was very helpful!
    • To post as a guest, your comment is unpublished.
      Lize-marie van Onselen · 1 years ago
      Please help, i dont always have a value in my first column, that couses that I end up with a seperator infort of the final result. Is there a way around this?
    • To post as a guest, your comment is unpublished.
      sindre · 2 years ago
      Thank you! This saved hours of frustration on my part! Works as a charm!
    • To post as a guest, your comment is unpublished.
      Par · 2 years ago
      The VBA script is wrong, because the output of the formula puts a huge space between the delimiters.