Erhalten der ersten Zelle, die KEINEN bestimmten Text in Zahlen enthält

Ich habe eine Tabelle in Numbers und versuche, den Wert der ersten Zelle zu erhalten, die das Zeichen enthält . Um dies zu tun, wollte ich verwenden MATCH(), hatte aber kein Glück, nachdem mir klar wurde, dass es nur 2 Dimensionen durchqueren kann. Stattdessen habe ich auf einem anderen Blatt eine Tabelle eingerichtet, die so aussieht:

Tabelle, bei der die Zeilen das Zeichen enthalten

Die Zahlen ganz links sind die Zeilennummern der Zeilen in der Tabelle mit den eigentlichen Daten. Row Contains Cellist genau das, wonach es sich anhört: ob diese Zeile die gewünschte Zelle enthält oder nicht. Um das herauszufinden, habe ich MATCH()pro Zeile verwendet.

Was ich jetzt herausfinden muss, ist, wie ich herausfinden kann, welche Zeile nicht die falsche Zeile ist. Es wäre einfach, nach einer Zelle zu suchen, in der steht not, aber ich muss eine Zelle mit einem Variablenwert finden, der nicht gleich ist not. Ich möchte den Zeilennamen (oder den Wert der Zelle links in der Spalte A) für diese Zelle (in diesem Fall 2) und den Wert der Zelle selbst in der Spalte finden B.

Was wäre die Formel für Correct Rowund Correct Columnangesichts dessen, wonach ich suche?

Ich weiß, dass dies bereits für Excel getan wurde, aber ich kann es nicht für Numbers herausfinden.

Ich bin offen für Lösungen, die Applescript erfordern.

Antworten (1)

Wie sich herausstellte, habe ich es herausgefunden. Es erforderte Applescript. Was ich getan habe, war, die Zeilen zu durchlaufen und die Werte in der Zeile auszuwählen, die "not"in der Spalte nicht vorhanden waren B. Hier ist das Applescript, das ich über Automator verwendet habe:

on run {input, parameters}

    tell application "Numbers"
        tell table "Calculator 1" of sheet 2 of document of front window
            set aRange to "A2:A22"
            set bRange to "B2:B22"
            set aRows to the rows of range aRange
            set bRows to the rows of range bRange

            set correctRow to -1
            set correctCol to -1

            repeat with i from 1 to count of bRows
                set aCell to "A" & (i + 1)
                set bCell to "B" & (i + 1)

                if value of (cell bCell) is not "not" then
                    set correctRow to value of (cell aCell)
                    set correctCol to value of (cell bCell)
                end if
            end repeat

            set the value of (cell "C2") to correctRow
            set the value of (cell "C4") to correctCol
        end tell

        display dialog "Updated!"
    end tell

    return input
end run

Denken Sie daran, dass die von mir verwendeten Zellen spezifisch für meine Tabelle sind, aber im Allgemeinen könnte diese Methode für jede 2D- MATCH()Funktion angewendet werden.

  1. Erstellen Sie eine Tabelle, die den Namen jeder Zeile in jeder Zeile der Kopfspalte hat, und verwenden Sie MATCH()auf diese Weise die gewünschte Funktion pro Zeile (siehe das Bild der Tabelle in meiner Frage).
  2. Verwenden Sie dieses Applescript, um die Funktionen zu durchlaufen MATCH()und die richtige Zeile und Spalte zu finden. Wechseln Sie "C2"in die Zelle, die Ihre sein wird, Correct Rowund "C4"in die Zelle, die Ihre sein wird Correct Column.
  3. Verwenden Sie die INDEX()Funktion, um den Wert der Zelle abzurufen und in eine andere Zelle einzufügen, indem Sie die Koordinaten verwenden, die das Applescript für Sie berechnet hat.