Temukan nilai terakhir dalam rentang sel yang memenuhi suatu kondisi

3

Saya mencari rumus di LibreOffice Calc untuk menemukan nilai terakhir dalam rentang yang memenuhi persyaratan. Berikut ini contoh data:

A         B             C           D                E                 F
Date      US Amount     Currency    Local Amount     Exchange Rate     Reconciled
01/01/01  $1000.00      GBP         654 GBP          1.53              x
01/05/01  $1000.00      EUR         757.12 EUR       1.32              x
01/18/01  $1000.00      GBP         688 GBP          1.45              x
01/19/01  $1000.00      EUR         763.36 EUR       1.31              x
01/28/01  $1000.00      GBP         675.58 GBP       1.48
01/29/01  $1000.00      EUR         778.87 EUR       1.28

Jadi, saya sedang mencari formula yang akan menarik nilai tukar mata uang terakhir yang sesuai dan direkonsiliasi. (Dalam hal ini, untuk EUR akan menarik 1,31, karena 1.28 belum direkonsiliasi.) Tampaknya di Excel saya mungkin dapat menggunakan fungsi DLAST, namun sepertinya itu belum diterapkan di LibreOffice .

Adakah solusi untuk LibreOffice?

Allez les lions
sumber

Jawaban:

1

Ya - Anda dapat menggunakan MATCHfungsi ini untuk menemukan baris terakhir yang cocok dengan kriteria tertentu . Dengan cara ini, Anda dapat menghitung OFFSETberdasarkan pada baris pertama. Akan terlihat seperti ini:

=OFFSET(E2;(MATCH("x";F1:F100;-1)-1);0;1)

Atau, dengan beberapa jeda dan komentar dimasukkan:

=OFFSET(              // find Offset ...
    E2;               // ... starting from first exchange rate ...
    (                 // ... and go down some rows:
        MATCH(        // get row of last reconciled rate using MATCH:
            "x";      // search for "x" ...
            F2:F100;  // in F1 to F100 (make sure that the range covers all rates!)
            -1        // assuming a descending sort order. So, the last of a sequence
                      // of identical values is the "first" one.
        )-1           // MATCH would return 4, so OFFSET would point to 5,
                      // so reduce by -1
    );
    0;                // no "horizontal" offset (stay in the same column)
    1)                // return only one cell
tohuwawohu
sumber
1
Ya, berdasarkan data sampel yang akan bekerja untuk nilai tukar Euro terakhir yang direkonsiliasi, namun itu tidak akan bekerja untuk nilai tukar Pound yang direkonsiliasi terakhir. Ini akan selalu memberi saya nilai tukar yang terakhir direkonsiliasi, terlepas dari mata uang apa itu. Saya kira lebih dari itu ada dua kondisi - satu, apakah nilai tukar telah "didamaikan" atau tidak, dan dua, yang merupakan nilai tukar itu. Apakah itu masuk akal?
Allez les singa
Ah, ok, saya akan mencoba mengintegrasikan pencarian untuk mata uang ke dalam formula. Anda sepenuhnya benar, formula saya baru saja memeriksa kurs yang direkonsiliasi terakhir, terlepas dari mata uang.
tohuwawohu
Ok, jadi saya menambahkan di kolom tersembunyi untuk setiap mata uang yang dilacak untuk setiap mata uang ketika mereka direkonsiliasi sehingga saya bisa menggunakan rumus MATCH yang Anda buat sesuai dengan itu. Ini kurang dari ideal, tetapi itu bekerja dan saya kira kemungkinan adalah pilihan terbaik. Terima kasih.
Allez les lions