29

そのため、Excel では、F5 を使用して空白のセルを見つけ、Ctrl + - を使用してセルを削除し、セルを上に移動して、情報が含まれているセル間の空白のセルを取り除こうとしています。しかし、それをしようとすると、「セルが見つかりません」と表示されます。

「空白の」セルを選択しても、Excel はそれらをカウントすることに気付きましたこの写真のように。これは奇妙です。しかし、選択したセルで Delete キーを押すと、カウントが消えてから、F5、空白、Ctrl + - および Shift セルを上に移動すると、機能します...

だから私の質問は、どうすればそれを行うことができるかということですが、Excelが空白ではないと考えるこれらの空白セルを使用していますか? 空白のセルを削除して削除しようとしましたが、大量のデータがあり、時間がかかりすぎることに気付きました。選択したデータ内でこれらの「空白」セルを選択する方法を見つける必要があります。

よろしくお願いします。:)

4

16 に答える 16

25

これは私のために働いた:

  1. 検索と置換を表示する CTR-H
  2. [検索対象] を空白のままにします
  3. 「置換」を一意のテキストに変更します。
    肯定的なものは別のセルでは見つかりません (私は「xx」を使用しました)
  4. 「すべて置換」をクリック
  5. 手順 3 の一意のテキストを [検索対象] にコピーします。
  6. 「置換」の一意のテキストを削除します
  7. 「すべて置換」をクリック
于 2016-08-01T14:18:36.290 に答える
23

啓示:一部の空白のセルは、実際には空白ではありません! 私が示すように、セルにはスペース、改行、および真の空を含めることができます。

例

これらのセルをすばやく見つけるには、いくつかの方法があります。

  1. =CODE(A1)数式は#VALUE!を返します。セルが本当に空の場合、それ以外の場合は数値が返されます。この番号は、で使用されるASCII 番号=CHAR(32)です。
  2. セルを選択して数式バーをクリックし、カーソルを使用してすべてを選択した場合。改行選択の例

これらの削除:

セルにスペースしかない場合は、次を使用して簡単に削除できます。

  1. を押しctrl + hて検索と置換を開きます。
  2. find whatにスペースを 1 つ入力し、 replace を空のままにして、オプションでセルの内容全体が一致するようにします。
  3. すべて置換を押します。

改行がある場合、これはより難しく、VBA が必要です。

  1. シート タブを右クリックし、コードを表示します。
  2. 次に、次のコードを入力します。は改行であることを覚えておいてください。Chr(10)必要に応じてこれを置き換えるだけです。たとえば" " & Char(10)、スペースと改行です。

    Sub find_newlines()
        With Me.Cells
            Set c = .Find(Chr(10), LookIn:=xlValues, LookAt:=xlWhole)
            If Not c Is Nothing Then
                firstAddress = c.Address
                Do
                    c.Value = ""
                    Set c = .FindNext(c)
                    If c Is Nothing Then Exit Do
                Loop While c.Address <> firstAddress
            End If
        End With
    End Sub
    
  3. を押してコードを実行しますF5


ファイルが提供された後: パフォーマンスを向上させるために関心のある範囲を選択してから、次を実行します。

Sub find_newlines()
    With Selection
        Set c = .Find("", LookIn:=xlValues, LookAt:=xlWhole)
        If Not c Is Nothing Then
            firstAddress = c.Address
            Do
                c.Value = ""
                Set c = .FindNext(c)
                If c Is Nothing Then Exit Do
            Loop While c.Address <> firstAddress
        End If
    End With
End Sub
于 2013-04-14T01:22:41.540 に答える
4

別のアプリケーションからのエクスポートからの散在する空白セルがまだセル数に表示されるという同様の問題がありました。

でクリアできました

  1. きれいにしたい列/行を選択してから、
  2. 「検索」[テキストなし] および「置換」[選択した単語]。
  3. 次に、「検索」[選択した単語] と「置換」を [テキストなし] で行いました。

それらのセルのすべての非表示/ファントム文字を取り除きました。多分これはあなたのために働くでしょうか?

于 2014-04-29T16:03:38.810 に答える
3

すべて、これは非常に簡単です。私は同じことを試みてきましたが、これがVBAで私のために働いたものです

Range("A1:R50").Select    'The range you want to remove blanks
With Selection
    Selection.NumberFormat = "General"
    .Value = .Value
End With

よろしく、 アナンド・ランカ

于 2015-03-09T09:46:05.947 に答える
2

これがすでに述べられているかどうかはわかりませんが、IsBlank() 式を実行すると、セルに何も表示されずに空白にならないという同様の問題がありました。

列全体を選択し、[検索と置換] を選択し、何もないセルを見つけて 0 に置き換え、もう一度検索と置換を実行し、0 のセルを見つけて "" に置き換えました。

これで問題が解決し、空白のセル (F5、Special、Blanks) を検索し、空白の行を削除できるようになりました.... BOOM.

すべてのアプリケーションで機能するとは限りませんが、これで問題は解決しました。

空白に見えるセルにスペースがある場合がありますが、セルで F2 を押すと、スペースが表示されます。セル内のスペースの正確な数がわかっている場合は、この方法で検索することもできます

于 2016-06-21T19:00:31.450 に答える
1

別の方法を見つけました。ヘッダー行 > [データ] タブ > [並べ替えとフィルター] - [フィルター] を選択して、すべての列にオートフィルターを設定します (重要でないと、データの位置がずれます)。最初のデータ列のドロップダウンを使用して、[すべて選択] のチェックを外し、[(空白)] オプションのみを選択して [OK] をクリックします。行を強調表示 (すべてまとめて) > 右クリック > [行の削除] を選択します。ドロップダウン > [すべて選択] に戻ります。プレスト:)

于 2016-04-06T11:30:29.737 に答える
0

COUNTA式で空白以外のセルをカウントすることで同様の問題が発生しました.すべてのセルをカウントしていました(空白のセルも空白ではない).=CODE()を試しましたが、スペースや改行はありませんでした.

セルをクリックしてからクリックすると、数式がセルをカウントすることがわかりました。私は何千ものセルを持っていたので、これを手動で行うことはできませんでした. この VBA ステートメントを書いて、文字通りすべてのセルをチェックし、空白の場合は空白にします。このマクロの無意味さは無視して、空のセルを実際に空であると Excel に認識させることによって実際に機能したことを信じてください。

'This checks all the cells in a table so will need to be changed if you're using a range
Sub CreateBlanks()

Dim clientTable As ListObject
Dim selectedCell As Range

Set clientTable = Worksheets("Client Table").ListObjects("ClientTable")

For Each selectedCell In clientTable.DataBodyRange.Cells
    If selectedCell = "" Then
        selectedCell = ""
    End If
Next selectedCell
End Sub
于 2016-07-12T04:03:23.560 に答える
0

私にとって最も簡単な解決策は次のとおりです。

1)範囲を選択してコピーします(ctrl + c)

2)新しいテキスト ファイルを作成し (どこでも、すぐに削除されます)、テキスト ファイルを開き、Excel 情報を貼り付けます (ctrl + v)

3) Excel の情報がテキスト ファイルになったので、テキスト ファイル内をすべて選択 (ctrl + a) し、コピー (ctrl + c) します。

4) 手順 1 で元の範囲の先頭に移動し、手順 3 でコピーから古い情報を貼り付けます。

終わり!偽の空白はもうありません。(一時テキスト ファイルを削除できるようになりました)

于 2015-02-19T13:05:21.600 に答える
0

これは数字で機能します。

範囲が O8:O20 の場合、近くの空の範囲 (例: T8:T20) に =O8/1 と入力して入力します。これにより、「空の」セルに対して #VALUE の結果が得られ、元の数値がそのまま残ります。

次に、範囲 T8:20 を選択した状態で (まだ選択されていない場合は CTL-*)、F5 を押して Special を選択します。[特別] ダイアログから [エラー] を選択し、[OK] をクリックします。これにより、実際の数値の選択が解除され、選択された #VALUE セルのみが残ります。それらを削除すると、実際の空のセルができます。T8:T20 をコピーして O8:O20 に貼り付けます。

基本的に、空白のセルは機能しないため、「空の」セルを Go To Special がラ​​ッチできるものに変換する必要があります。#VALUE に変換されるすべてのアクションが機能し、他の「エラー」タイプもサポートされる必要があります。

于 2013-10-11T16:12:22.750 に答える
0

コーディングなしでこの問題を修正した方法を次に示します。

  1. 「空白」セルを削除したい列全体を選択します。
  2. 上部の [条件付き書式] タブをクリックします。
  3. 「新しいルール」を選択します。
  4. 「次を含むセルのみを書式設定する」をクリックします。
  5. 「間」を「等しい」に変更します。
  6. 「等しい」ボックスの横にあるボックスをクリックします。
  7. 問題のある「空白」セルの 1 つをクリックします。
  8. [フォーマット] ボタンをクリックします。
  9. ボックスを埋める色をランダムに選択します。
  10. 「OK」を押します。
  11. これにより、問題のある「空白」のセルがすべて、選択した色に変更されます。色付きのセルの 1 つを右クリックし、[並べ替え] と [選択したセルの色を一番上に置く] に移動します。
  12. これにより、問題のあるすべてのセルが列の一番上に配置され、他のすべてのセルは元の順序のままになります。これで、1 つのグループ内の問題のあるセルをすべて選択し、[セルの削除] ボタンをクリックできます。それらを取り除くために上に。
于 2014-08-02T21:03:38.100 に答える