Czy jest możliwe warunkowe sformatowanie komórki, jeśli komórka zawiera formułę (aby ostrzec siebie i innych użytkowników podczas aktualizacji komórki)?
18
Czy jest możliwe warunkowe sformatowanie komórki, jeśli komórka zawiera formułę (aby ostrzec siebie i innych użytkowników podczas aktualizacji komórki)?
Odpowiedzi:
Aby to zrobić, możesz użyć formatowania warunkowego, używając XLM i nazw zakresów
Mam dłuższy artykuł na temat używania XLM z nazwami zakresów i formatowaniem warunkowym do automatycznego formatowania arkuszy kalkulacyjnych zgodnie z zawartością komórki
źródło
xlm
bez ostrzeżeń makro, MSFT zmieniło podejście bezpieczeństwa.Opierając się na odpowiedzi brettdj, ponieważ powiązanie z tym artykułem było dość trudne do naśladowania:
=ISFORMULA(INDIRECT("rc",FALSE))
$1:$1048576
jako zakres do zastosowania. W przeciwnym razie możesz wprowadzić dowolny zakres.Formuła
INDIRECT("rc",FALSE)
zwraca odwołanie do bieżącej komórki. Jeśli kiedykolwiek użyję tego w arkuszu, tworzę Zdefiniowaną Nazwę o nazwie coś podobnegoThisCell
i używam tego w formule, na wypadek, gdybym wrócił po latach i pomyślał „po co to do diabła?”.źródło
INDIRECT("rc",FALSE)
, użyj odwołania względnego z lewą górną komórką w zakresie formatowania warunkowego „Dotyczy”. Na przykład, jeśli masz zakres „Dotyczy”=$A$3:$F$300
, użyj=ISFORMULA(A3)
. Działa to, ponieważ formatowanie warunkowe obsługuje odwołania względne, zobacz toMożesz wypróbować te:
VBA
Utwórz niestandardową funkcję z następującym kodem:
Przykład:
Aby sprawdzić, czy jakieś komórki w kolumnie A mają jakieś formuły:
=IsFormula(A1)
Bez VBA
Lub
Przejdź do Style komórek (na karcie Narzędzia główne) i wybierz styl, który chcesz skojarzyć z komórkami zawierającymi formułę. Aby zmienić wygląd, kliknij prawym przyciskiem myszy wybrany styl i kliknij polecenie Modyfikuj . Wszystkie komórki o tym stylu zostaną automatycznie zaktualizowane.
źródło
Jest to bardzo prosty sposób, przetestowany w programie Excel 2016.
Podkreśl zakres, do którego chcesz to zastosować, powiedzmy od
A3:W20
. Przejdź do formatowania warunkowego i wybierzNEW RULE | USE A FORMULA TO DETERMINE WHICH CELLS TO FORMAT
.Wprowadź
=isformula(A3)
i wybierz format, który chcesz zastosować.A3
jest oczywiście odniesieniem do pierwszej komórki w twoim zakresie, ale to formatowanie stosuje się do wszystkich. W rezultacie w twoim zakresie każda komórka będąca formułą jest warunkowo sformatowana.źródło
Nowsze witryny pomocy zalecają funkcję zdefiniowaną przez użytkownika:
Następnie użyj tej funkcji jako warunku
W rzeczywistości program Excel 2013 i nowsze wersje mają
IsFormula
jako funkcję standardową.źródło
Możesz także użyć formatowania warunkowego:
=HasNoFormula
Testowane przy użyciu programu Excel 2010.
źródło