Mam arkusz działań (naprawczy, NCR, IMP itp.) I muszę automatycznie liczyć poprzednie działania tego samego typu, aby utworzyć unikalne identyfikatory działań.
Kiedyś VLOOKUP()
uzyskiwałem pierwszą część identyfikatora akcji (typu), ale nie mogę wymyślić, jak ją policzyć, aby policzyć akcje tego samego typu w tej kolumnie, aby uzyskać część o kolejnym numerze.
Do tej pory mam następujące:
=VLOOKUP(C3,Sheet3!A2:B5,2)
Działa to do identyfikacji typu, czyli CAR
, OBS
, IMP
, i NCR
.
Czy ktoś może pomóc w dodaniu części numeru sekwencyjnego?
EDYTOWAĆ:
Chcę, aby wynik formuły nadał każdej akcji tego samego typu unikalny identyfikator. Tak więc, na przykład, jeśli istnieje wiele działań typu NCR
będzie generować identyfikatory jak to: NCR0001
, NCR0002
, CAR0001
, OBS0001
, NCR0003
.
Vlookup
przeszukała formuła? Jak 4 samochody lub 10 OBS !!Odpowiedzi:
Rozwiązanie jest dość proste, gdy zorientujesz się, że
COUNTIF()
funkcji można używać z symbolami wieloznacznymi.Skonfiguruj w
Sheet3
ten sposóbi twój arkusz roboczy w ten sposób
Wprowadź następującą formułę
D3
i ctrl-enter / copy-paste / fill-down / auto-fill do reszty kolumny tabeli:Wyjaśnienie:
Zasadniczo formuła zlicza liczbę działań tego samego typu, które występują nad bieżącą komórką, a następnie tworzy identyfikator z częścią liczbową, która jest o jedną większą wartością.
Używa symbolu wieloznacznego
?
(dowolnego pojedynczego znaku) wCOUNTIF()
funkcji, aby dopasować do bieżącego typu, po którym następują dowolne cztery znaki, np. DlaD3
funkcji częściowo wartościCOUNTIF(D$2:D2,"NCR????")
. Kluczową rzeczą, na którą należy tutaj zwrócić uwagę,D$2:D2
jest zakres dynamiczny, który jest oceniany jako „od wiersza2
do wiersza nad bieżącą komórką (kolumnyD
)”.Następnie dodaje jeden i lewy pad do liczby z zerami.
RIGHT(10001+<count of type>,4)
Na koniec ta liczba jest dołączana do typu.
Uwagi:
Twój
VLOOKUP()
został zmodyfikowany, aby działał poprawnie:FALSE
a nie domyślna, czyliTRUE
.źródło