LibreOffice Calc のデータ列を別の列の数値に合わせて配置する

LibreOffice Calc のデータ列を別の列の数値に合わせて配置する

3 つの列があります。

  • 列 A には、異なるサンプル ステーションを表す 1 から 100 までのカウントが含まれています。数字は順番に並んでいます。
  • 列 B は列 A とは独立しています。列 A から選択された数値 (1 ~ 100 の値) が含まれますが、毎回一部のステーションのデータのみを含むリストを取得するため、すべての数値が含まれるわけではありません。列 B は昇順で並べられていますが、一部のステーションが欠落しているため列 A よりも短く、列 B のエントリを列 A のエントリと揃えるための空白セルがありません。
  • 列 C には、列 B に関連付けられたデータ (サンプリング ステーションの温度測定値やその他の情報など) が含まれます。

ここで、列 C から列 A に合わせてすべての情報を手動でコピーするのを避けたいと思います。列 B と列 C の値を列 A のステーション リストに合わせて、必要に応じて列 B と列 C に空白を挿入します。その後、列 B を削除できます。

例:

ColA ColB ColC
  1    1    a
  2    2    d
  3    4    r
  4    6    e
  5    7    x
  6    9    r
  7    10   e
  8    11   f
  9    13   e
  10   15   e 
 ...,...,...

その後は次のようになるはずです...

ColA ColB ColC
  1    1    a
  2    2    d
  3
  4    4    r
  5
  6    6    e
  7    7    x
  8
  9    9    r
  10   10   e
  11   11   f
  12
  13   13   e
  14
  15   15   e 
 ...,...,...

答え1

TL;DR バージョン: 元のデータを A3:B102 に配置し、D3:D102 に 1 ~ 100 の数字を入力して=IFNA(VLOOKUP($D3,$A$3:$B$102,2, FALSE), "")E3 に貼り付け、E3 を E4:E102 にコピーします。


ご希望の内容に基づいて、元のデータからソートを分離し、代わりにサンプリング ステーションのリストを作成し、 を使用してVLOOKUP各ステーションのデータを検索することをお勧めします。

必要なものは3つあります。

  1. 並べ替えられていない、または不完全なデータ読み取りリストを貼り付ける場所。
    • ここには完全なデータセットを保存するのに十分なスペースがあるはずです。
    • この場合、サンプリング ステーションが 100 個あり、ステーションごとに 1 つの読み取り値があるため、100 行と 2 列が必要になります。
    • 私の例では、これは範囲になりますA3:B102
  2. サンプリング ステーションのリストと、その横に関連する読み取り値を入力する場所。
    • このリストには、表示する順序に従ってすべてのサンプリング ステーションが含まれている必要があります。
    • ここでも、100 個のサンプリング ステーションを調べます。これらのステーションには 1 ~ 100 の番号が付けられており、番号順に並べたいと考えています。つまり、1 つの列に 1、2、3 などから 100 までを入力し、その隣の列に数式を入力します。
    • 私の例では、サンプリングステーションのリストはD3:D102、数式はすべてのセルにコピーされますE3:E102
  3. 並べ替えられたデータの「読み取り」列に入力され、並べ替えられていないデータ内の適切なデータを検索する数式。
    • この数式では絶対参照と相対参照の両方が使用されるため、両方を理解する必要があります。
      • ほとんどの人は、次のような相対参照をよく知っています。D3これらの参照は、あるセルから別のセルにコピーされると変更されます。
        (たとえば=D3E3コピーE3E4、新しいコピーE4読むつもりです=D4。)
      • 絶対参照には、$コピー時に変更されないように列や行に が含まれます。
        (例: コピー時に列は変更されません=$D3が、行は変更されます。同様に の場合、=D$3列は変更されますが、行は変更されません。最後に は=$D$3常にそのセルを参照し、コピー時に変更されることはありません。)
    • 数式は、並べ替えられたデータ読み取りの一番上の行に配置され、その下の次の 99 個のセルにコピーされる必要があります。
    • 正しいデータを検索する式E3です=VLOOKUP($D3,$A$3:$B$102,2, FALSE)が、これは#N/A存在しないデータを参照するセルに を配置します。 の代わりに空白が必要な場合は、の中に#N/Aを配置します。VLOOKUPIFNA

この例の完成した式は次のようになります=IFNA(VLOOKUP($D3,$A$3:$B$102,2, FALSE), "")。結果は次のようになります。
元のデータ、(空白の列)、並べ替えられたデータ

答え2

  1. 並べ替えたいデータ範囲を定義します(メニュー/データ/範囲の定義)
  2. メニュー/データ/並べ替えで並べ替えオプションを設定します。
  3. 希望する順序で列を選択します(並べ替え基準タブ)
  4. 範囲に列ラベルが含まれている場合は適切にマークします。
  5. 「ソートのコピー先」をマークし、コピー先の範囲を入力します(すべての列がコピーされます)

関連情報