Zbuduj odwołanie do komórki, nie znając numeru wiersza (liczby)

16

To nie może być bardziej podstawowe pytanie dotyczące arkusza kalkulacyjnego, ale zawsze byłem facetem w stylu SQL ...

Jak zbudować formułę, w której wartość zostanie pobrana z innej kolumny w bieżącym wierszu. Nie może być konwencjonalnym „E2”, ponieważ bieżący wiersz może mieć wartość 3.

Problem sprowadza się do zdefiniowania formuły, w której ROWdesygnator jest względny. $E2działa, gdy formuła jest wywoływana w wierszu 2, ale kończy się niepowodzeniem, gdy jest wywoływana z wiersza 3. Tworzę wiersze za pośrednictwem interfejsu API - mój kod nie może wiedzieć, który numer wiersza jest wstawiany.

justSteve
źródło
Możesz określić, którego programu używasz.
arkusz kalkulacyjny googleDocs, ale zjem kapelusz, jeśli jest inny niż Excel.
justSteve

Odpowiedzi:

16

ROWZwraca liczbę wierszy z dowolnej komórki lub zakresu.

Składnia jest następująca: Row( reference ) ale jeśli parametr referencyjny zostanie pominięty, zakłada on komórkę, w której wprowadzono funkcję Row.

Można to wykorzystać w odniesieniu do komórek za pomocą indirect, na przykład, =indirect("C" & row())odnosi się do kolumny C w bieżącym wierszu.

cztery gwiazdki
źródło
6

=R[0]C[-1]miałoby sens, ale notacja R1C1 nie działa w nowej wersji Arkuszy Google, z wyjątkiem funkcji INDIRECT (ref, FALSE) , np INDIRECT("R1C1", FALSE).

To pisz:

=INDIRECT("R[0]C[-1]", FALSE)
Jerry101
źródło
Separacja parametrów byłaby możliwa poprzez „;” nie przez „,”.
Jpsy
2
@Jpsy Zależy od ustawień regionalnych. To jest ,dla niektórych krajów i ;dla innych.
Whow @sandwich - to wyjaśnia ciągłe problemy z dokumentami. AFAIK nawet Excel ma tę różnicę w zależności od ustawień regionalnych. Z pewnością duży problem dla wielu użytkowników, którzy napotykają ten problem, nie rozumiejąc, dlaczego ich polecenia nie działają zgodnie z opisem w dokumentacji. Dziękuję za wyjaśnienie!
Jpsy
3

Plik $in excel (i arkusz kalkulacyjny google doc) służy do tworzenia referencji bezwzględnych (nie względnych). Innymi słowy, $e$3będzie odnosić się do e3 bez względu na to, gdzie jest kopiowany, z dowolnego miejsca, do którego jest kopiowany. Musisz zablokować kolumnę i wiersz osobno (lub drugi się zmieni).

soandos
źródło
Dotyczy również liczb Apple.
[woła o błędy w głosowaniu] Szukam wyrażenia w wierszu względnym bezwzględnej kolumny. Zawsze chcę wartości E z wiersza względem bieżącego wiersza.
justSteve
$ e2 lub inny żądany numer.
soandos
czy „2” nie jest absolutne? Potrzebuję sposobu na określenie „bieżącego wiersza”.
justSteve
2 nie jest absolutne, tylko e jest. $ Blokuje tylko to, co następuje zaraz po nim, a nie całość.
soandos
-1

Posługiwać się:

=R[0]C[-1]

Nawiasy kwadratowe oznaczają, że jest to odniesienie względne. =R1C1jest taki sam jak=A1

działa to w dokumentach Google, nie jestem pewien co do programu Excel.

wir
źródło
1
R [1] C [-1] nie oznacza = A1. Czy celowo odwoływałeś się do innej komórki za pomocą nawiasów?
OnenOnlyWalter
1
wpisanie = R [0] C [-1] w komórce B1 jest takie samo jak wpisanie = A1. W dokumentach Google będzie automatycznie konwertować jeden na drugi.
eddy