基本的には、特定の基準でデータをフィルター処理した後に新しい列を挿入し、その列に各行に1つずつ連続した番号を挿入するだけです。つまり、1つの列に次のようなデータがあります。
アームストロング、ジョン
ビーティ、ジェーン
クームス、ジョン
そして、次のような新しい列を実行する必要があります。
1アームストロング、ジョン
2ビーティー、ジェーン
3クームス、ジョン
最初の数個の数字を入力してから、下にドラッグして列の残りを埋めようとしましたが、そうすると、何らかの理由ですべての数字が1に変わります。
助けてくれてありがとう。
さて、この問題に対する正しい答えを見つけました こちら
手順は次のとおりです。
これで、フィルタリングされたデータの最上行(ヘッダーのすぐ下)に次のコードを入力します。
= MAX($ "Your Column Letter" $ 1: "Your Column Letter" $ "フィルターの現在の行-1")+ 1
例:
= MAX($ A $ 1:A26)+1
これはセルA27から適用されます。
Ctrlキーを押しながらEnterキーを押します。
これは範囲内でのみ機能し、テーブルでは機能しないことに注意してください!
同じ問題がありました。私は専門家ではありませんが、これが使用したソリューションです。データをフィルター処理する前に、最初の一時列を作成して、データセット全体に元の並べ替え順序を設定します。一時的な「元のソート順」列に自動番号を付けます。次に、データをフィルタリングします。フィルター処理したデータをコピーして、新しいワークシートに貼り付けます。これにより、フィルター処理されたデータのみが新しいシートに移動し、行番号が連続するようになります。目的のフィールドに自動番号を付けます。元のワークシートに戻り、フィルタリングされた行を削除します。セカンダリシートから新しく番号が付けられたデータをコピーして、元のワークシートの下部に貼り付けます。次に、フィルターをクリアし、一時的な「元のソート順」列でワークシートをソートします。これにより、新しく番号付けされたデータが元の順序に戻り、一時列を削除できます。
手順1:挿入する列の列全体(ヘッダーを除く)を強調表示します
ステップ2:(Kutoolsを使用)[挿入]ドロップダウンで、[カスタムリストに入力]をクリックします
ステップ3:[編集]をクリックします
ステップ4:リストを作成する(例:1、2)
ステップ5:新しいカスタムリストを選択して、[範囲を入力]をクリックします
完了!!!
これを試して:
最初の行で値1を設定します(例:cell A1
)
次の行セット:=A1+1
最後に残りの行を自動補完します
別の列の各値のシーケンスシリーズで列を埋めるという同じニーズがありました。上記のすべての回答を試しましたが、問題を解決できませんでした。簡単なVBAマクロで解決しました。
私のデータは同じ構造です(ただし、3000行あります)。
以下のコード:
> Sub Seq_N3() ' ' Seq_N3 Macro ' Sequence numbering of N3 based on N2 value
> do N2
> Dim N2 As Integer
> Dim seq As Integer
>
> With ActiveSheet
>
> For N2 = 1 To 7 Step 1
> seq = 1 '
> .Range("B2").Select '
>
> Do While ActiveCell.Offset(0, -1).Value2 <> 0
>
> If ActiveCell.Offset(0, -1).Value2 = N2 Then
> ActiveCell.Value2 = seq
> seq = seq + 1
> ActiveCell.Offset(1, 0).Select
> Else
> ActiveCell.Offset(1, 0).Select
> End If
>
> Loop
>
> Next N2
>
> End With End Sub
それが役に立てば幸い!
これを行う最も簡単な方法は、フィルターを削除し、合計データの先頭からシリーズを埋めることです。目的のデータをフィルターし、番号のリストを新しいシートにコピーします(これは、番号を追加する合計行のみである必要があります)A1列に貼り付けます。列B1に「1」を追加し、右クリックして押したまま、数字の最後までドラッグして、「シリーズを埋める」を選択します。次に、フィルターを使用してリストに戻り、右の「VLOOKUP」の次の列に、新しいシートに貼り付けたリストに対するフィルター処理された番号を入力し、2番目の値を返します。