Obtendo a primeira célula que não contém determinado texto em números

0

Eu tenho uma tabela em números e estou tentando obter o valor da primeira célula que contém o caractere . Para fazer isso, eu queria usar MATCH(), mas não tive sorte depois que percebi que só podia atravessar duas dimensões. Em vez disso, configurei uma tabela em outra planilha com a seguinte aparência:

Tabela com a qual as linhas contêm o caractere

Os números na extrema esquerda são os números das linhas da tabela com os dados reais. Row Contains Cellé exatamente o que parece: se essa linha contém ou não a célula desejada. Para descobrir isso, eu usei MATCH()por linha.

O que eu preciso descobrir agora é como descobrir qual linha não é a linha errada. Seria fácil procurar uma célula que diga not, mas preciso encontrar uma célula com um valor variável que não seja igual a not. Quero encontrar o nome da linha (ou o valor da célula à esquerda, na coluna A) dessa célula (nesse caso 2) e o valor da própria célula na coluna B.

Qual seria a fórmula Correct Rowe Correct Column, considerando o que estou procurando?

Sei que as pessoas já fizeram isso no Excel, mas não consigo descobrir o Numbers.

Estou aberto a soluções que exigem Applescript.

jmindel
fonte

Respostas:

1

Como se vê, eu descobri. Exigia Applescript. O que fiz foi percorrer as linhas e selecionar os valores na linha onde "not"não estava presente na coluna B. Aqui está o Applescript que usei via Automator:

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

Lembre-se de que as células que usei são específicas para minha planilha, mas geralmente esse método pode ser aplicado a qualquer MATCH()função 2D .

  1. Criar uma tabela tem o nome de cada linha em cada linha da coluna do cabeçalho e use a MATCH()função desejada por linha dessa maneira (veja a figura da tabela na minha pergunta).
  2. Use este Applescript para percorrer as MATCH()funções e encontrar a linha e coluna corretas. Mude "C2"para a célula que for sua Correct Rowe "C4"para a célula que for sua Correct Column.
  3. Use a INDEX()função para obter o valor da célula e coloque-o em outra célula, usando as coordenadas que o Applescript calculou para você.
jmindel
fonte