Reguła sprawdzania poprawności danych Excel obejmująca dwie kolumny

-1

Reguła brzmi: „Możesz wprowadzić liczbę w tej kolumnie lub w kolumnie obok niej, ale obie kolumny nie mogą mieć wartości (w tym samym wierszu), chyba że jedna z nich ma wartość zero.

Wszystkie są ważne:

A.....B.
0.....2.5
3.....0
0.....0

To nie byłoby poprawne:

A.....B
1.5...2

Nie pracuję dużo z Excelem. Czy taka reguła jest możliwa?

PS Jeśli to możliwe, chciałbym „unieważnić” wpis, ustawiając go na zero.

Dodatkowa edycja: Każde z tych działań byłoby OK, gdyby reguła nie była spełniona: a) która komórka pary komórek była ostatnio aktualizowana, powinna być ustawiona na zero; lub b) druga komórka powinna być ustawiona na zero, jeśli nie ma możliwości uniknięcia błędu odniesienia cyklicznego.

Mówiąc wprost, staram się ZAPOBIEGAĆ, że w parze komórek jest więcej niż jedna niezerowa wartość, a nie tylko dać jakieś wizualne wskazanie, że w parze jest więcej niż jedna niezerowa wartość.

Tim
źródło
1
Tak, jest to możliwe, ale jak chcesz, aby reguła się objawiła? Możesz użyć formatowania warunkowego, aby zmienić kolory komórek. Możesz też użyć formuły w trzeciej kolumnie, która może zawierać „prawidłowy” lub „nieprawidłowy”. Możesz nawet zrobić filtr w dwóch kolumnach, który mógłby ukryć / pokazać prawidłowy. Możesz stworzyć program VBA, który mógłby wykonać regułę. Istnieją inne możliwości: musisz dodać więcej kontekstu i poinformować nas o swoich próbach. Następnie możemy zapewnić więcej pomocy.
gns100
Dziękuję za komentarze. Czy mogę sprawić, że „zły” wpis stanie się zero?
Tim
Nie rozumiem opinii. Proszę, oświeć mnie.
Tim

Odpowiedzi:

1

Powiedziałeś, że chcesz mieć jedną z następujących czynności:

a) która komórka pary komórek była ostatnio aktualizowana, powinna być ustawiona na zero, lub

b) druga komórka powinna być ustawiona na zero.

OK, nie jestem pewien, czy pierwsza opcja może zostać spełniona, ale druga zdecydowanie może.

W komórce A1wpisz następującą formułę:

=IF(B1<>"",IF(B1<>0,0,""),"")

W komórce B1wpisz następującą formułę:

=IF(A1<>"",IF(A1<>0,0,""),"")

Zaczniesz od odwołania cyklicznego (obie formuły będą odnosić się pośrednio do siebie), ale gdy tylko wpiszesz liczbę w dowolnej kolumnie, odwołanie cykliczne zniknie, a formuła pozostawiona w tym wierszu przejmie kontrolę, dając ci zero, jeśli inna komórka nie jest równa zero, a jeśli druga komórka ma zero, pozostawi komórkę pustą dla kolejnego zera lub innej liczby.

Chris Rogers
źródło
Dziękuję za odpowiedź. Nie trzecia kolumna. Niezależnie od tego, która z tych dwóch komórek była ostatnio aktualizowana, powinna ona wynosić zero, jeśli w parze komórek znajduje się więcej niż jedna niezerowa wartość. Gdy próbuję dostosować formułę do tego celu, pojawia się błąd odwołania cyklicznego. =IF(OR(A1=0,B1=0),A1,0)a dla drugiej komórki z pary =IF(OR(A1=0,B1=0),B1,0) Alternatywnie, mógłbym zmienić drugą komórkę z pary na 0, jeśli pozwoliłoby to uniknąć odwołania cyklicznego. Ale nie jestem pewien, jak ustawić wartość innej komórki z formuły.
Tim