Przejdź do treści stopki
NARZęDZIA EXCEL

Jak scalić komórki w Excelu: Wszechstronny przewodnik

Napisane przez zespol w Iron Software

Odejmowanie w Excelu opiera się na jednym operatorze: znaku minus. W przeciwieństwie do dodawania, które ma swoją własną funkcję SUM, Excel nie ma dedykowanej funkcji odejmowania. Odejmowanie w Excelu odbywa się za pomocą znaku minus (-) jako operatora arytmetycznego, a nie specjalnie zbudowanej funkcji, a ten pojedynczy operator obsługuje wszystko, od prostego odejmowania dwóch liczb po odejmowanie całych kolumn, procentów, dat i wartości czasu. Każda formuła zaczyna się od znaku równości na pasku formuły, obejmuje odwołania do komórek lub bezpośrednie liczby w Excelu, a po naciśnięciu enter wyświetla wynik.

Zrozumienie, co się dzieje, gdy Excel oblicza formułę odejmowania, ułatwia śledzenie bardziej zaawansowanych metod. Kiedy chcesz odjąć jedną wartość od innych komórek w całym arkuszu, bezpośrednie odniesienie do tych komórek jest zawsze bardziej niezawodne niż ponowne wpisywanie liczb. Wpisz wartość do komórki, odwołaj się do niej w formule, a gdy komórka źródłowa się zmieni, każda formuła, która się do niej odwołuje, przelicza się automatycznie. To jest powód, dla którego oparte na komórkach odejmowanie jest znacznie bardziej użyteczne niż wpisywanie surowych liczb do każdej formuły. Jeśli komórka w zakresie jest pusta, Excel traktuje ją jak zero podczas wykonywania obliczeń, więc puste komórki w zakresie nie psują formuł.

Ten przewodnik obejmuje każdą metodę odejmowania w Excelu w 2026 roku: proste odejmowanie ze znakiem minus, odejmowanie wielu komórek, używanie funkcji sumy do odejmowania zakresów, odejmowanie całej kolumny z użyciem odniesienia absolutnego, odejmowanie procentów, odejmowanie dat, aby znaleźć różnicę w dniach, odejmowanie wartości czasu i obsługę liczb ujemnych. Deweloperzy tworzący aplikacje .NET, którzy potrzebują stosować formuły odejmowania do plików Excel programistycznie, znajdą sekcję na końcu omawiającą, jak IronXL radzi sobie z tym w C# bez konieczności posiadania zainstalowanego Microsoft Office.

Metoda 1: Proste odejmowanie przy użyciu znaku minus

Najlepsze do: Szybkiego odejmowania dwóch liczb lub dwóch komórek, codzienne obliczenia.

Proste odejmowanie można wykonać za pomocą bezpośrednich liczb lub odniesień do komórek. To punkt początkowy dla każdej innej metody w tym przewodniku.

Odejmowanie dwóch liczb bezpośrednio:

  1. Kliknij dowolną pustą komórkę na arkuszu.
  2. Wpisz znak równości (=), aby rozpocząć formułę na pasku formuły.
  3. Wpisz pierwszą liczbę, potem znak minus (-), a następnie drugą liczbę. Na przykład: =100-50
  4. Naciśnij enter. Excel oblicza i wyświetla wynik (50) w komórce.

Odejmowanie z wykorzystaniem odniesień do komórek:

  1. Wprowadź swoje wartości do oddzielnych komórek. Na przykład wpisz 250 w komórce B5 i 120 w komórce C5.
  2. Kliknij pustą komórkę, w której chcesz, aby pojawił się wynik.
  3. Wpisz =B5-C5 na pasku formuły.
  4. Naciśnij enter. Wynik (130) pojawia się w komórce.

Pracując z dwiema lub więcej liczbami w oddzielnych komórkach, aby odjąć wartości z różnych komórek w Excelu, zacznij od wpisania znaku równości (=), następnie kliknij na komórkę zawierającą wartość początkową, wpisz znak minus i kliknij na komórkę zawierającą odjemnik przed naciśnięciem enter. Klikanie bezpośrednio w komórki zamiast wpisywania ich adresów jest szybsze i zmniejsza ryzyko błędów.

Jeśli klikniesz komórkę podczas wpisywania formuły, Excel wstawia jej adres automatycznie. Jest to szybsze niż ręczne wpisywanie odniesienia do komórki i eliminuje błędy ortograficzne w adresach komórek.

How To Do Subtraction In Excel 1 related to Metoda 1: Proste odejmowanie przy użyciu znaku minus

Metoda 2: Odejmij wiele komórek w jednej formule

Najlepsze do: Odejmowania trzech lub więcej poszczególnych komórek od wartości początkowej.

Aby odjąć wiele komórek w Excelu, można połączyć operatory znaku minus. Podczas odejmowania wielu komórek można użyć formuły takiej jak =A1-A2-A3-A4-A5, aby odjąć wartości w komórkach A2 do A5 od wartości w A1.

Kroki:

  1. Kliknij komórkę, w której chcesz uzyskać wynik.
  2. Wpisz =, a następnie swoje pierwsze odniesienie do komórki (wartość początkowa).
  3. Wpisz znak minus, a następnie kolejne odniesienie do komórki.
  4. Powtórz znak minus i odniesienie do komórki dla każdej dodatkowej komórki do odjęcia.
  5. Naciśnij enter, gdy wszystkie komórki zostaną dodane.

Na przykład, aby odjąć komórki B2, C2 i D2 od A2: =A2-B2-C2-D2. Ta formuła pozwala na jednorazowe odjęcie dowolnej liczby komórek.

Użycie funkcji SUM do uproszczenia formuły:

Podczas odejmowania wielu komórek łańcuchowanie znaków minus staje się nieporęczne. Użycie funkcji SUM może uprościć odejmowanie wielu komórek. Na przykład, =A1-SUM(A2:A5) odejmuje sumę komórek A2 do A5 od wartości w A1.

Można użyć funkcji SUM() do odjęcia zakresu komórek od jednej komórki, pisząc formułę taką jak =A1-SUM(A2:A5), która sumuje wartości A2 do A5 i odejmuje tę sumę od A1. Inną metodą odjęcia wielu komórek jest umieszczenie wartości odjętych jako argumenty ujemne wewnątrz samej funkcji SUM. W Excelu odejmowanie liczby dodatniej równa się dodaniu liczby ujemnej, jak w formule =SUM(100, -20, -10), która daje 70. Oznacza to, że można odjąć wiele liczb jednocześnie, wymieniając wszystkie liczby jako argumenty z znakiem minus, unikając potrzeby używania znaku plus lub łańcucha operatorów minus. To oznacza, że =SUM(A1,-A2,-A3,-A4,-A5) daje ten sam wynik, co =A1-A2-A3-A4-A5.

Można także odjąć zakres komórek od jednej komórki, wpisując formułę taką jak =E1-E3-E4-E5-E6-E7 lub po prostu =E1-SUM(E3:E7), aby to zrobić bardziej wydajnie.

Korzystanie z podejścia funkcji SUM jest zazwyczaj preferowane do odejmowania wielu komórek, ponieważ wyraźnie oddziela wartość początkową od wartości odejmowanych i jest łatwiejsze do sprawdzenia na pierwszy rzut oka.

How To Do Subtraction In Excel 2 related to Metoda 2: Odejmij wiele komórek w jednej formule

Metoda 3: Odejmij całą kolumnę przy użyciu odniesienia absolutnego

Najlepsze do: Stosowania tego samego stałego potrącenia do każdego wiersza w kolumnie, takiego jak standardowy podatek, rabat lub opłata.

Kiedy musisz odjąć stałą wartość od każdej komórki w kolumnie, odniesienie absolutne blokuje jeden adres komórki, więc nie przesuwa się, gdy przeciągasz formułę w dół kolumny.

Aby odjąć określoną wartość od całej kolumny w Excelu, można użyć odniesienia absolutnego w swojej formule, takiej jak =A2-$B$2, co utrzymuje odniesienie stałe przy przeciąganiu formuły w dół kolumny. Podczas przeciągania formuły w dół kolumny w Excelu odniesienia absolutne zapobiegają przesunięciu się odniesienia.

Kroki:

  1. Umieść swoją stałą wartość potrącenia w jednej komórce, na przykład $250 w komórce C17.
  2. W pierwszej komórce wyniku wpisz =B17-$C$17. Znaki dolara przed literą kolumny i numerem wiersza tworzą odniesienie absolutne.
  3. Naciśnij enter, aby potwierdzić formułę.
  4. Kliknij komórkę wyniku ponownie, a następnie przeciągnij uchwyt wypełniania (mały kwadrat w prawym dolnym rogu komórki) w dół, aby skopiować formułę do wszystkich wierszy poniżej.

How To Do Subtraction In Excel 3 related to Metoda 3: Odejmij całą kolumnę przy użyciu odniesienia absolutnego Każdy wiersz oblicza swoją własną wartość w kolumnie B minus ta sama stała wartość w C17. Jeśli później zmienisz wartość w C17, każda formuła w kolumnie zaktualizuje się jednocześnie.

Użyj klawisza F4 natychmiast po kliknięciu odniesienia do komórki podczas wpisywania formuły, aby przejść przez typy odniesień absolutnych i względnych. Naciśnięcie F4 raz dodaje oba znaki $, dwa razy blokuje tylko wiersz, trzy razy blokuje tylko kolumnę.

Metoda 4: Odejmij dwie kolumny (Kolumna vs Kolumna)

Znajomość, jak odejmować kolumny, jest niezbędna podczas porównywania danych w wielu kolumnach, takich jak budżet w porównaniu do rzeczywistych wyników lub cele sprzedażowe względem rezultatów.

Aby odjąć jedną całą kolumnę od drugiej, wpisz formułę w pierwszej komórce wyniku i przeciągnij ją w dół.

  1. W komórce wyniku dla pierwszego wiersza (na przykład D3) wpisz =B3-C3.
  2. Naciśnij enter.
  3. Kliknij ponownie D3 i przeciągnij uchwyt wypełniania w dół przez wszystkie wiersze, które zawierają dane.

Excel kopiuje formułę do każdego wiersza, automatycznie dostosowując numery wierszy (D4 staje się =B4-C4, D5 staje się =B5-C5 itd.). To nazywane jest odniesieniem względnym i jest to domyślne zachowanie, gdy adresy komórek nie zawierają znaków dolara.

How To Do Subtraction In Excel 4 related to Metoda 4: Odejmij dwie kolumny (Kolumna vs Kolumna) Aby odjąć jedną całą kolumnę od drugiej, można również użyć funkcji SUM w połączeniu z znakiem minus do szybszego obliczenia, gdy chcesz pojedynczy wynik: =SUM(B3:B14)-SUM(C3:C14) daje całkowitą wariancję w całym jednym wierszu.

Metoda 5: Odejmij procenty

Najlepsze do: Obliczania cen z rabatem, odliczeń podatkowych lub jakiejkolwiek redukcji wyrażonej jako procent.

Aby odjąć procenty w Excelu, składnia formuły to =Liczba-(Liczbaprocent). Na przykład, aby odjąć 10% od 100, użyjesz formuły =100-(10010%).

Możesz także użyć odniesień do komórek w formule, takich jak =A2-(A2*$B$2), gdzie A2 zawiera liczbę, a B2 zawiera procent. To podejście pozwala na zmianę stawki rabatu lub podatku tylko w jednej komórce i automatyczne przeliczenie każdego wiersza.

Kroki:

  1. Wpisz oryginalną wartość w jednej komórce, na przykład 1200 w komórce B4.
  2. Wpisz procent w innej komórce, na przykład 0,10 (sformatowane jako 10%) w komórce C4.
  3. W komórce wyniku wpisz =B4-(B4*C4).
  4. Naciśnij enter. Excel oblicza 1200 minus 10% z 1200 (120) i wyświetla 1080. Mnożenie w nawiasach jest wykonywane jako pierwsze, a następnie do wyniku stosowane jest odejmowanie.

Jeśli procent jest przechowywany w komórce z odniesieniem stałym, użyj odniesienia absolutnego, aby je zablokować: =B4-(B4*$C$4). Przeciągnij tę formułę w dół kolumny, aby zastosować tę samą procentową redukcję do wielu wartości, utrzymując stałość komórki procentowej.

How To Do Subtraction In Excel 5 related to Metoda 5: Odejmij procenty Upewnij się, że komórka procentowa jest sformatowana jako procent (nie jako zwykła liczba). Jeśli B4 zawiera 10 zamiast 10%, formuła =A2-(A2*B4) odjęłaby 1 000%, a nie 10%.

Metoda 6: Odejmij daty, aby znaleźć różnicę w dniach

Najlepsze do: Obliczania długości projektów, okresów obowiązywania umów, starzenia się faktur lub dni, które upłynęły między dwoma zdarzeniami.

Aby odjąć daty w Excelu, można użyć formuły =Data_koniec - Data_początek, która daje liczbę dni między dwoma datami. Excel przechowuje wartości dat jako liczby seryjne, zaczynając od 1 dla roku 1900, dlatego odejmowanie dat działa dokładnie tak samo jak odejmowanie liczb.

Kroki:

  1. Wpisz datę początkową w jednej komórce, na przykład 05-stycznia-2026 w komórce B11.
  2. Wpisz datę końcową w innej komórce, na przykład 30-kwietnia-2026 w komórce C11.
  3. W komórce wyniku wpisz =C11-B11.
  4. Naciśnij enter.

Jeśli wynik odejmowania dat pojawia się jako dziwna liczba lub inna data zamiast zwykłej liczby dni, zmiana formatu komórki na Ogólny lub Liczbę wyświetli poprawną liczbę dni. Kliknij prawym przyciskiem myszy komórkę wyniku, wybierz Format komórek, wybierz Ogólny lub Liczbę i kliknij OK.

How To Do Subtraction In Excel 6 related to Metoda 6: Odejmij daty, aby znaleźć różnicę w dniach

Metoda 7: Odejmij wartości czasu

Najlepsze do: Obliczania przepracowanych godzin, długości spotkań lub upływu czasu między dwoma stemplami czasu.

Aby odjąć wartości czasu w Excelu, użyj formuły =Czas_koniec - Czas_początek, upewniając się, że komórka wyniku jest sformatowana, aby prawidłowo wyświetlać czas.

Kroki:

  1. Wpisz czas początkowy w jednej komórce, na przykład 9:00 AM w komórce B18.
  2. Wpisz czas końcowy w innej komórce, na przykład 5:30 PM w komórce C18.
  3. W komórce wyniku wpisz =C18-B18.
  4. Naciśnij enter.

Podczas odejmowania czasu w Excelu, sformatuj komórkę wyniku jako Czas lub użyj niestandardowego formatu, takiego jak [h]:mm, aby prawidłowo wyświetlać godziny. Kwadratowe nawiasy wokół h w [h]:mm pozwalają godzinom przekroczyć 24, co jest ważne dla łącznych całkowitych czasu.

How To Do Subtraction In Excel 7 related to Metoda 7: Odejmij wartości czasu Aby znaleźć upływ czasu między dwoma wartościami czasu w Excelu, wpisz czas początkowy w jednej komórce, a czas końcowy w innej, a następnie użyj formuły =Czas_koniec - Czas_początek. W przykładzie zmiany roboczej w pliku demo 9:00 AM do 5:30 PM daje wynik 8:30 (osiem godzin i trzydzieści minut).

Dla zmian nocnych, gdzie czas końcowy jest wcześniejszy niż czas początkowy (na przykład 10:00 PM do 6:00 AM), użyj formuły =1+C20-B20, aby uwzględnić przekroczenie daty północnej. Bez +1 Excel zwraca ujemną wartość czasu, która wyświetla się jako kratki (######).

Metoda 8: Odejmij liczby ujemne

Najlepsze do: Zrozumienia, jak liczby ujemne wchodzą w interakcje z formułami odejmowania.

Liczby ujemne w odejmowaniu zachowują się dokładnie tak, jak w standardowej arytmetyce. Odejmowanie liczby ujemnej daje wynik dodawania.

  • =10-(-5) zwraca 15 (odejmowanie liczby ujemnej 5 to to samo co dodanie 5)
  • =A1-B1, gdzie B1 zawiera -50, a A1 zawiera 100, zwraca 150

Pracując z liczbami ujemnymi w raportach lub danych finansowych, operator znaku minus obsługuje je poprawnie bez specjalnej składni. Znak minus na wartości jest częścią samej wartości, a nie operatorem formuły.

Jeśli potrzebujesz wyświetlać liczby ujemne w określonym formacie, kliknij prawym przyciskiem myszy komórkę, wybierz Format komórek i wybierz format liczb, który używa nawiasów dla liczb ujemnych lub czerwonego czcionki, oba z których są dostępne w kategorii Liczba w dialogu formatowania komórki.

Dla użytkowników pracujących z danymi opartymi na siatce, możliwe jest odejmowanie macierzy w Excelu za pomocą formuły tablicowej. Aby odjąć dwie macierze o takich samych wymiarach, wybierz zakres wynikowy, wpisz =A2:C4-E2:G4, i naciśnij Ctrl + Shift + Enter (lub po prostu Enter w Microsoft 365). Excel aplikuje odejmowanie element po elemencie z obu macierzy jednocześnie.

Typowe problemy i rozwiązywanie problemów

Formuła wyświetla tekst zamiast liczby

To się dzieje, gdy komórka była sformatowana jako Tekst, zanim wpiszesz formułę. Znak równości jest traktowany jak dosłowny znak, a nie wyzwalacz formuły. Kliknij komórkę, przejdź do Strona główna > rozwijane formatowanie liczb i zmień na Ogólny, a następnie wprowadź formułę ponownie.

Odejmowanie dat wyświetla datę lub dziesiętną zamiast liczby dni

Jeśli wynik odejmowania dat pojawia się jako data (na przykład 14-stycznia-1900) lub jako dziesiętny, komórka wynikowa jest sformatowana jako Data lub Czas zamiast Liczby. Kliknij prawym przyciskiem myszy komórkę wynikową, wybierz Format komórek, wybierz Ogólny i kliknij OK, aby wyświetlić poprawną liczbę dni.

Wynik formuły nie aktualizuje się, gdy zmieniają się komórki źródłowe

Excel może być ustawiony na tryb ręcznego obliczania. Naciśnij Ctrl + Alt + F9, aby wymusić pełne przeliczanie, lub przejdź do Formuły > Opcje obliczania > Automatyczny, aby powrócić do domyślnego ustawienia, w którym Excel automatycznie oblicza wyniki przy każdym zmianie.

Przeciąganie formuły zmienia odniesienie, które powinno pozostać stałe

Odniesienie do komórki bez znaków dolara (takie jak C17) staje się względne i przesuwa się, gdy formuła jest przeciągana. Aby ją zablokować, kliknij na odniesienie na pasku formuły i naciśnij F4, aby dodać znaki dolara i uczynić je odniesieniem absolutnym ($C$17). Jeśli arkusz kalkulacyjny już używa formuły, znajdź i zamień odniesienie w całej kolumnie.

Wynik wyświetla #VALUE! po odjęciu

Ten błąd zwykle oznacza, że jedna z komórek do odjęcia zawiera tekst, a nie liczbę. Sprawdź każdą komórkę referowaną w formule. Częste przyczyny to spacje przed liczbami, liczby sformatowane jako tekst importowane z innego systemu lub daty przechowywane jako ciągi tekstowe, a nie rzeczywiste wartości daty.

Odejmowanie czasu daje wynik zerowy lub ######

Zero zazwyczaj oznacza, że godziny początkowe i końcowe są w tej samej komórce sformatowanej inaczej. ###### Zazwyczaj oznacza to, że wynik jest ujemny (na przykład zmiana nocna, gdzie nie wprowadzono dostosowania o +1) lub kolumna jest zbyt wąska, aby wyświetlać wartość. Poszerz kolumnę lub użyj niestandardowego formatu [h]:mm, aby rozwiązać problemy z wyświetlaniem.

Szybkie odniesienie: Metody odejmowania w Excelu

Tabela poniżej obejmuje każdy przypadek odejmowania omówiony w tym przewodniku, z wzorcem formuły i kluczowymi uwagami dla każdego.

Cel Przykładowa formuła Uwagi
Odejmij bezpośrednio dwie liczby =100-50 Proste odejmowanie, brak potrzeby odwołań do komórek
Odejmij dwie komórki =A1-B1 Aktualizuje się automatycznie, gdy wartości się zmieniają
Odejmij wiele komórek =A1-B1-C1-D1 Łącz znaki minus dla każdej komórki
Odejmij zakres używając SUM =A1-SUM(B1:E1) Czystsze niż łączenie wielu znaków minus
Odejmij z ujemnymi argumentami SUM =SUM(A1,-B1,-C1) Odejmowanie to dodawanie liczby ujemnej
Odejmij całą kolumnę =B2-$C$2, a następnie przeciągnij w dół Odniesienie absolutne utrzymuje potrącenie stałe
Odejmij dwie pełne kolumny =B3-C3, a następnie przeciągnij w dół Odniesienie względne przesuwa się automatycznie dla każdego wiersza
Odejmij procent =A2-(A2*10%) Nawiasy kontrolują kolejność obliczeń
Odejmij daty =C11-B11 Sformatuj wynik jako Liczba, aby zobaczyć dni
Odejmij wartości czasu =C18-B18 Sformatuj wynik jako [h]:mm dla godzin
Odejmij przez kolumny z całkowitą sumą =SUM(B2:B14)-SUM(C2:C14) Całkowita różnica dla dwóch kolumn

Dla programistów: Stosuj formuły odejmowania w plikach Excel z IronXL

Jeśli twoja aplikacja .NET generuje raporty Excel, podsumowania finansowe lub eksporty danych, które obejmują obliczenia odejmowania, IronXL pozwala na wpisywanie tych formuł bezpośrednio do komórek za pomocą C# bez konieczności instalacji Microsoft Office na serwerze.

IronXL obsługuje ponad 165 formuł Excela, a formuły odejmowania są ustalane poprzez przypisanie ciągu formuły do właściwości Formula dowolnej komórki. Na ciąg formuły używa się standardowej składni Excela, więc ta sama formuła, którą wpiszesz do Excela, działa identycznie, gdy jest ustawiona przez IronXL. Po ustawieniu formuł, wywołanie workBook.EvaluateAll() wymusza przeliczenie, aby każdy wynik formuły był aktualny przed zapisaniem pliku.

Oto praktyczny przykład, który tworzy raport z odchyleń budżetowych, stosuje komórka do komórki odejmowanie przez dwie kolumny i używa funkcji SUM do obliczenia sum:

using IronXL;

WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet ws = workBook.DefaultWorkSheet;
ws.Name = "Budget Variance";

// Column headers
ws["A1"].Value = "Department";
ws["B1"].Value = "Budget";
ws["C1"].Value = "Actual";
ws["D1"].Value = "Variance";

// Sample data rows
string[] depts   = { "Engineering", "Marketing", "Sales", "HR", "Operations" };
int[]    budgets = { 480000, 220000, 310000, 95000, 260000 };
int[]    actuals = { 512000, 198000, 327000, 88000, 241000 };

for (int i = 0; i < depts.Length; i++)
{
    int row = i + 2;
    ws[$"A{row}"].Value = depts[i];
    ws[$"B{row}"].Value = budgets[i];
    ws[$"C{row}"].Value = actuals[i];

    // Subtract Actual from Budget to get Variance
    // Standard Excel subtraction formula - no SUBTRACT function exists
    ws[$"D{row}"].Formula = $"=B{row}-C{row}";
}

// Total row using SUM-based subtraction
int totalRow = depts.Length + 2;
ws[$"A{totalRow}"].Value = "Total";
ws[$"B{totalRow}"].Formula = $"=SUM(B2:B{totalRow - 1})";
ws[$"C{totalRow}"].Formula = $"=SUM(C2:C{totalRow - 1})";

// Total variance: subtract sum of actuals from sum of budgets
ws[$"D{totalRow}"].Formula = $"=B{totalRow}-C{totalRow}";

// Recalculate all formulas before saving
workBook.EvaluateAll();

workBook.SaveAs("budget-variance-report.xlsx");
using IronXL;

WorkBook workBook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkSheet ws = workBook.DefaultWorkSheet;
ws.Name = "Budget Variance";

// Column headers
ws["A1"].Value = "Department";
ws["B1"].Value = "Budget";
ws["C1"].Value = "Actual";
ws["D1"].Value = "Variance";

// Sample data rows
string[] depts   = { "Engineering", "Marketing", "Sales", "HR", "Operations" };
int[]    budgets = { 480000, 220000, 310000, 95000, 260000 };
int[]    actuals = { 512000, 198000, 327000, 88000, 241000 };

for (int i = 0; i < depts.Length; i++)
{
    int row = i + 2;
    ws[$"A{row}"].Value = depts[i];
    ws[$"B{row}"].Value = budgets[i];
    ws[$"C{row}"].Value = actuals[i];

    // Subtract Actual from Budget to get Variance
    // Standard Excel subtraction formula - no SUBTRACT function exists
    ws[$"D{row}"].Formula = $"=B{row}-C{row}";
}

// Total row using SUM-based subtraction
int totalRow = depts.Length + 2;
ws[$"A{totalRow}"].Value = "Total";
ws[$"B{totalRow}"].Formula = $"=SUM(B2:B{totalRow - 1})";
ws[$"C{totalRow}"].Formula = $"=SUM(C2:C{totalRow - 1})";

// Total variance: subtract sum of actuals from sum of budgets
ws[$"D{totalRow}"].Formula = $"=B{totalRow}-C{totalRow}";

// Recalculate all formulas before saving
workBook.EvaluateAll();

workBook.SaveAs("budget-variance-report.xlsx");
Imports IronXL

Dim workBook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
Dim ws As WorkSheet = workBook.DefaultWorkSheet
ws.Name = "Budget Variance"

' Column headers
ws("A1").Value = "Department"
ws("B1").Value = "Budget"
ws("C1").Value = "Actual"
ws("D1").Value = "Variance"

' Sample data rows
Dim depts As String() = {"Engineering", "Marketing", "Sales", "HR", "Operations"}
Dim budgets As Integer() = {480000, 220000, 310000, 95000, 260000}
Dim actuals As Integer() = {512000, 198000, 327000, 88000, 241000}

For i As Integer = 0 To depts.Length - 1
    Dim row As Integer = i + 2
    ws($"A{row}").Value = depts(i)
    ws($"B{row}").Value = budgets(i)
    ws($"C{row}").Value = actuals(i)

    ' Subtract Actual from Budget to get Variance
    ' Standard Excel subtraction formula - no SUBTRACT function exists
    ws($"D{row}").Formula = $"=B{row}-C{row}"
Next

' Total row using SUM-based subtraction
Dim totalRow As Integer = depts.Length + 2
ws($"A{totalRow}").Value = "Total"
ws($"B{totalRow}").Formula = $"=SUM(B2:B{totalRow - 1})"
ws($"C{totalRow}").Formula = $"=SUM(C2:C{totalRow - 1})"

' Total variance: subtract sum of actuals from sum of budgets
ws($"D{totalRow}").Formula = $"=B{totalRow}-C{totalRow}"

' Recalculate all formulas before saving
workBook.EvaluateAll()

workBook.SaveAs("budget-variance-report.xlsx")
$vbLabelText   $csharpLabel

Aby zastosować stałe potrącenie przy użyciu wzorca odniesienia absolutnego, zapisz ciąg formuły z notacją $, dokładnie tak jak w Excelu:

using IronXL;

WorkBook workBook = WorkBook.Load("payroll.xlsx");
WorkSheet ws = workBook.DefaultWorkSheet;

// Fixed tax deduction is stored in cell C1
ws["C1"].Value = 250;

// Apply =B2-$C$1 to rows 2 through 20 (absolute reference to C1)
for (int row = 2; row <= 20; row++)
{
    ws[$"D{row}"].Formula = $"=B{row}-$C$1";
}

workBook.EvaluateAll();
workBook.SaveAs("payroll-net-pay.xlsx");
using IronXL;

WorkBook workBook = WorkBook.Load("payroll.xlsx");
WorkSheet ws = workBook.DefaultWorkSheet;

// Fixed tax deduction is stored in cell C1
ws["C1"].Value = 250;

// Apply =B2-$C$1 to rows 2 through 20 (absolute reference to C1)
for (int row = 2; row <= 20; row++)
{
    ws[$"D{row}"].Formula = $"=B{row}-$C$1";
}

workBook.EvaluateAll();
workBook.SaveAs("payroll-net-pay.xlsx");
Imports IronXL

Dim workBook As WorkBook = WorkBook.Load("payroll.xlsx")
Dim ws As WorkSheet = workBook.DefaultWorkSheet

' Fixed tax deduction is stored in cell C1
ws("C1").Value = 250

' Apply =B2-$C$1 to rows 2 through 20 (absolute reference to C1)
For row As Integer = 2 To 20
    ws($"D{row}").Formula = $"=B{row}-$C$1"
Next

workBook.EvaluateAll()
workBook.SaveAs("payroll-net-pay.xlsx")
$vbLabelText   $csharpLabel

IronXL działa na .NET 6 i nowszych, i jest w pełni kompatybilny z Windows, Linux, macOS, Docker i Azure. Ponieważ zapisuje bezpośrednio do formatu Open XML bez uruchamiania Excela, jest szybki i odpowiedni do generacji raportów po stronie serwera w dużych ilościach. Przewodnik Excel formuły w C# i strona jak edytować formuły Excel obejmują pełny zakres dostępnych operacji formuł.

Rozpoczęcie: Zainstaluj przez NuGet za pomocą Install-Package IronXL.Excel. Dostępny jest bezpłatny okres próbny z 30 dniami pełnej funkcjonalności i bez potrzeby posiadania karty kredytowej.

Dalsza lektura:

Podsumowanie

Każde zadanie odejmowania w Microsoft Excel sprowadza się do tego samego operatora: znaku minusa. Od wpisania=A1-B1dla szybkiej różnicy dwóch komórek po użycie=A1-SUM(B1:E1)dla czystszych formuł na wiele komórek, wzorzec jest spójny, niezależnie od tego, ile komórek lub ile kolumn jest zaangażowanych. Odniesienia absolutne ze znakami dolara utrzymują stałe wartości zablokowane podczas przeciągania formuł przez wiersze, a ten sam operator minus działa bezproblemowo dla procentów, dat i wartości czasu, gdy tylko komórki wynikowe są poprawnie sformatowane.

Dla odejmowania procentów, formuła =Liczba-(Liczba*procent) obsługuje każdą stawkę. Dla dat, =Data_koniec-Data_początek zwraca liczbę dni bezpośrednio, o ile komórka wynikowa jest sformatowana jako Liczba, a nie Data. Dla czasu, =Czas_koniec-Czas_początek z formatem [h]:mm daje dokładny czas upływający, łącznie z przypadkami, gdy godziny przekraczają 24. W każdej sytuacji pamiętaj, że Excel nie ma dedykowanej funkcji odejmowania: odejmowanie to zawsze znak minus, a liczby ujemne w danych źródłowych zachowują się dokładnie tak, jak się spodziewano.

Deweloperzy generujący pliki Excel w aplikacjach .NET mogą odwzorować wszystkie te wzorce za pomocą IronXL, ustawiać formuły odejmowania przez właściwość Formula i wywołać EvaluateAll(), aby upewnić się, że wszystkie wyniki są aktualne przed zapisaniem. Rozpocznij od bezpłatnej wersji próbnej, aby eksplorować pełne wsparcie dla formuł w swoim własnym srodowisku projektu.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespół wsparcia Iron

Jesteśmy online 24 godziny, 5 dni w tygodniu.
Czat
E-mail
Zadzwoń do mnie