Wpis z mikrobloga

#excel #vba

Mirki takie pytanko. Mam formułe =jeżeli(A="tekst";B;"prawda";""). Kwestia jest taka, że w ten sposób jak przeciągnę formułe to mam w cholerę pustych wierszy. Czy dałoby się jakoś w tą formułe zagnieździć inną, która usuwałaby te puste wiersze tak, żeby zostawały tylko te z kolumną "prawda"? Ewentualnie jakieś makro?
  • 7
@empty11: Ta formuła ma zbyt dużo argumentów, jak Ci działa? Czy chodziło o:

=JEŻELI(A="tekst";B="Prawda";"")?

Posortuj B. Można też napisać macro które będzie usuwało całą linijkę jeśli w A nie znajdzie "tekst".
@gwynebleid: Wiesz co nie bardzo, bo chodzi o to żeby ten proces był jak najbardziej zautomatyzowany. Poza tym mam też inne kolumny, które jak posortuje to mi się posypią.
@dolOfWK6KN: Sorry, pisze na szybko chodziło mi o =JEŻELI(A="TEKST";B;""). A dałby ktoś rade sklepać takie makro na szybko? Czy to bardziej skomplikowane? Jeszcze jedna może istotna informacja to, że w pliku jest kilka arkuszy i ta formuła występuje powiedzmy w arkuszu
Funkcją nie usuniesz wierszy, potrzebne jest makro. Pamiętaj, że jego działania nie można cofnąć! Poniższe pokoloruje wiersze przeznaczone do usunięcia na żółto, a jeśli będzie działać jak trzeba, to usuń pierwszy apostrof z ostatniego wiersza przez "End Sub".

**Sub usun_wiersze()
Dim usun As Range

txt = "TEKST" 'tu wprowadź tekst, który chcesz wyszukać

KolSpr = "A" 'kolumna, w której szukasz tekstu
KolZr = "B" 'kolumna, z której przepiszesz wartość
Set ZakrDoc =