Przejdź do głównej zawartości

Jak liczyć / sumować przekreślone komórki w programie Excel?

W programie Excel zawsze formatujemy przekreślenie dla niektórych komórek, które wskazują, że wartości komórek są bezużyteczne lub nieprawidłowe, abyśmy mogli dokładniej analizować dane. W tym artykule omówię, jak wykonać niektóre obliczenia w zakresie za pomocą tych przekreślonych komórek w programie Excel.

Policz przekreślone komórki w programie Excel

Policz bez przekreślonych komórek w programie Excel

Suma wyklucza przekreślone komórki w programie Excel


strzałka niebieski prawy bąbelek Policz przekreślone komórki w programie Excel

Jeśli chcesz wiedzieć, ile komórek z przekreślonym formatem znajduje się w zakresie, możesz utworzyć funkcję zdefiniowaną przez użytkownika, wykonaj następujące czynności:

1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Okno Microsoft Visual Basic for Applications.

2. Kliknij wstawka > Modułi wklej następujący kod w Okno modułu.

Kod VBA: Policz przekreślone komórki

Public Function CountStrike(pWorkRng As Range) As Long
'Update 20140819
Application.Volatile
Dim pRng As Range
Dim xOut As Long
xOut = 0
For Each pRng In pWorkRng
    If pRng.Font.Strikethrough Then
        xOut = xOut + 1
    End If
Next
CountStrike = xOut
End Function

3. Następnie zapisz i zamknij ten kod i wróć do arkusza, a następnie wprowadź tę formułę = CountStrike (A2: B14) do pustej komórki, zobacz zrzut ekranu:

liczba-dokumentów-strike-1

4. Następnie naciśnij Wchodzę klucz i policzono wszystkie przekreślone komórki. Zobacz zrzut ekranu:

liczba-dokumentów-strike-1


strzałka niebieski prawy bąbelek Policz bez przekreślonych komórek w programie Excel

Ale czasami możesz chcieć policzyć tylko normalne komórki, z wyłączeniem komórek przekreślonych. Poniższy kod może ci pomóc.

1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Okno Microsoft Visual Basic for Applications.

2. Kliknij wstawka > Modułi wklej następujący kod w Okno modułu.

Kod VBA: Policz bez przekreślonych komórek

Public Function CountNoStrike(pWorkRng As Range) As Long
'Update 20140819
Application.Volatile
Dim pRng As Range
Dim xOut As Long
xOut = 0
For Each pRng In pWorkRng
    If Not pRng.Font.Strikethrough Then
        xOut = xOut + 1
    End If
Next
CountNoStrike = xOut
End Function

3. Następnie zapisz i zamknij ten kod, wróć do arkusza roboczego, wpisz tę formułę = countnostrike (A2: B14) do pustej komórki i naciśnij Wchodzę kluczem, uzyskasz pożądany wynik.

liczba-dokumentów-strike-1

Note: W powyższych wzorach A2: B14 to zakres, w którym chcesz zastosować formuły.


strzałka niebieski prawy bąbelek Suma wyklucza przekreślone komórki w programie Excel

Ponieważ komórki przekreślone są nieużywane, chcę tutaj zsumować tylko zwykłe liczby bez przekreślonych liczb. Aby rozwiązać to zadanie, potrzebujesz również funkcji zdefiniowanej przez użytkownika.

1. Przytrzymaj ALT + F11 klawisze, aby otworzyć Okno Microsoft Visual Basic for Applications.

2. Kliknij wstawka > Modułi wklej następujący kod w Okno modułu.

Kod VBA: Suma wyklucza przekreślone komórki

Public Function ExcStrike(pWorkRng As Range) As Long
'Update 20140819
Application.Volatile
Dim pRng As Range
Dim xOut As Long
xOut = 0
For Each pRng In pWorkRng
    If Not pRng.Font.Strikethrough Then
        xOut = xOut + pRng.Value
    End If
Next
ExcStrike = xOut
End Function

3. Następnie zapisz i zamknij ten kod, wróć do arkusza roboczego, wpisz tę formułę = excstrike (B2: B14) do pustej komórki i naciśnij Wchodzę klucz, a otrzymasz sumę wszystkich liczb bez przekreślonych komórek. Zobacz zrzut ekranu:

liczba-dokumentów-strike-1

Note: W powyższych wzorach B2: B14 to zakres, w którym chcesz zsumować komórki bez przekreślenia.


Podobne artykuły:

Jak sumować / liczyć pogrubione liczby w zakresie komórek w programie Excel?

Jak liczyć i sumować komórki na podstawie koloru tła w programie Excel?

Jak liczyć / sumować komórki na podstawie kolorów czcionek w programie Excel?

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
Comments (6)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I want to ignore the cell from count where both type of text strike and non strike available by VBA
This comment was minimized by the moderator on the site
Great! I found a little bug here. The result doesn't actualize by itself. When I do changes on the sheet, the number doesn't changes. How can I fix it? Thanks
This comment was minimized by the moderator on the site
Hi. Great code for ignoring strikethrough text whilst summing. But, is it possible to filter the data and get a subtotal which still sums without the strike through text? Thanks
This comment was minimized by the moderator on the site
This seems to round to whole numbers, and does not take into account the decimal places. For example, 1.35 + 1.00 would equal 2 instead of 2.35, but 1.50 + 1 would equal 3 instead of 2.50. How can you fix the code to add accurately?
This comment was minimized by the moderator on the site
[quote]This seems to round to whole numbers, and does not take into account the decimal places. For example, 1.35 + 1.00 would equal 2 instead of 2.35, but 1.50 + 1 would equal 3 instead of 2.50. How can you fix the code to add accurately?By Ari[/quote] ARI, just change the two words "Long" to "Double" in the formula. Here is the same formula above, with the correct Data Types to allow for values with decimal points: Public Function ExcStrike(pWorkRng As Range) As Double 'Update 20161107_IITCSglobal.com Application.Volatile Dim pRng As Range Dim xOut As Double xOut = 0 For Each pRng In pWorkRng If Not pRng.Font.Strikethrough Then xOut = xOut + pRng.Value End If Next ExcStrike = xOut End Function
This comment was minimized by the moderator on the site
Thank you very much for this information, it's extremely helpful, However, I'm having an issue using the VBA code: Sum exclude strikethrough cells.

It does not exclude the strikethrough cells in my table unless I manually perform a strikethrough then double click the cell for the code to work.

I'm using a table with a conditional format to shade and strikethrough the entire row when (Table Header called Sold) Column "W" cell contains a "Yes", then that row will have a strikethrough and grey color. The worksheet table is "InventoryItems" and is configured to calculated automatically, but the code is not being triggered to exclude the dollar amount when the cell contains the strikethrough. Could you advise what I might be doing wrong?
Thank you for your time and help.

There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations