Regularnie otrzymuję surowy plik eksportu i napisałem makra do formatowania i manipulowania nim. Używam Excel 2010 i jestem umiarkowanie komfortowy w VBA.
Jedna z przychodzących kolumn ma listę nazw, ze znanej (skończonej, ale dużej) listy, oddzielonej średnikami. Jeśli jednak korzystasz z autofiltru, nie traktuje on wpisów jak prawdziwych wielokrotnych selekcji.
Pytanie: Czy mogę programowo powiedzieć programowi Excel, aby zobaczył „jabłko; winogrono” jako wielokrotny wybór zarówno „jabłka”, jak i „winogrona”?
Przykład:
Załóżmy, że wiemy, że lista zawiera tylko następujące nazwy: jabłko wiśnia winogrono Pomarańczowy brzoskwinia
Komórka (komórki) w kolumnie (A) może zawierać jeden, dwa, ... lub pięć z tych owoców w dowolnej kombinacji, oddzielone „;”.
(A1) = jabłko (A2) = jabłko; winogrono (A3) = jabłko; brzoskwinia (A4) = wiśnia; winogrono (A5) = wiśnia; Pomarańczowy
Na szczęście dla mnie dane przychodzące są zawsze eksportowane w porządku alfabetycznym (więc nie będę miał ani jednej komórki zawierającej „jabłko; winogrono” i inną komórkę zawierającą „winogrono, jabłko”).
Problem: AutoFilter zakłada, że każda możliwa kombinacja jest unikalną opcją „wybierz”. W późniejszych krokach muszę połączyć / filtrować na podstawie wielu kryteriów, które utrudniają korzystanie z szyk - ponieważ mam zbyt dużą listę, aby zobaczyć wszystkie kombinacje permutacji jako unikalne możliwości.
[Na przykład: filtruję, aby skopiować grupę danych do nowej karty, a czasami po prostu przenoszę coś z „winogronem” na nową kartę, ale czasami wszystko, co zawiera „winogrono” LUB „wiśnia”, jest kopiowane do ta sama nowa karta.]
Istnieje wyraźna możliwość, że zastanowię się nad tym i utrudnię to, co musi być!
Dzięki!
Edycja: Innymi słowy, nie widzę, jak rozsądnie przechodzić przez zakres (). Pole autofiltrów ... Kryterium1: = () z wykładniczo dużym zestawem kombinacji. Ma sens?
źródło
Odpowiedzi:
Posługiwać się
advancedfilter
zamiastautofilter
ponieważ może obsłużyć dowolną liczbę kryteriów.Oto działający przykład. Skonfiguruj arkusz Excela tak, jak pokazuje pierwszy zrzut ekranu i uruchom makro.
Przed makro
Po makro
Jestem pewien, że wpadniesz na pomysł i jak go dostosować.
źródło