U ovom vodiču naučit ćemo kako ukloniti Excel formulu bez uklanjanja sadržaja u C#. Ponekad moramo dijeliti Excel datoteke s drugima koje sadrže izračunate vrijednosti, ali ne želimo izložiti naše formule. Ovo zahtijeva brisanje Excel formule, ali zadržavanje sadržaja u C# kao što je opisano u sljedećim koracima.
Koraci za uklanjanje Excel formule, ali zadržavanje vrijednosti pomoću C#
- Dodajte Aspose.Cells for .NET projektu pomoću upravitelja paketa NuGet
- Dodajte referencu za imenski prostor System i Aspose.Cells
- Instancirajte licencu kako biste izbjegli probnu verziju vodenog žiga
- Učitajte workbook koji sadrži podatke i formulu
- Dobijte referencu ćelije čiju formulu želite ukloniti
- Pohranite vrijednost u privremenu varijablu i uklonite formulu
- Ponovno postavite vrijednost ćelije pomoću privremene varijable
- Spremite radnu bilježnicu
Gore navedeni koraci opisuju postupak uklanjanja Excel formule, ali zadržavanje vrijednosti u C#. S radnog lista pristupamo željenoj ćeliji i spremamo njezinu vrijednost u privremenu varijablu. Zatim uklanjamo formulu iz ćelije i ponovno je ispunjavamo vrijednošću iz privremene varijable. Na kraju spremamo radnu knjižicu.
Kod za uklanjanje Excel formule i zadržavanje vrijednosti u C#
using System; | |
using Aspose.Cells; | |
namespace RemoveExcelFormulaWithoutRemovingContentsInCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Instantiate license to avoid trial version watermark | |
License license = new License(); | |
license.SetLicense("Aspose.Cells.lic"); | |
// Load the workbook containing data and formula | |
Workbook workbookWithFormula = new Workbook("WorkbookWithFormula.xlsx"); | |
// Get the reference of the cell whose formula is to be removed | |
Cell cellWithFormula = workbookWithFormula.Worksheets[0].Cells["C1"]; | |
// Store value in a temporary variable | |
Object tempData = cellWithFormula.Value; | |
// Remove formula | |
cellWithFormula.Formula = ""; | |
// Reset cell value using the temporary variable | |
cellWithFormula.Value = tempData; | |
// Save the workbook | |
workbookWithFormula.Save("WorkbookWithoutFormula.xlsx"); | |
} | |
} | |
} |
Gornji primjer koda uklanja formulu iz jedne ćelije. Međutim, ako želite ukloniti formule iz cijele radne knjige, možete koristiti WorkSheet.Cells.RemoveFormulas() koja uklanja sve formule iz cijele radne knjige i zamjenjuje svaku vrijednost ćelije odgovarajućim rezultatom formule. Sljedeći kod može se koristiti za brisanje excel formula, ali zadržavanje sadržaja u C# iz cijele radne knjige.
Kod za uklanjanje Excel formula, ali zadržavanje vrijednosti pomoću C#
using System; | |
using Aspose.Cells; | |
namespace RemoveAllExcelFormulasWithoutRemovingContentsInCSharp | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// To avoid trial version watermark first instantiate the license | |
License license = new License(); | |
license.SetLicense("Aspose.Cells.lic"); | |
// Load the target workbook from which all formulas are to be deleted | |
Workbook workbookWithFormula = new Workbook("WorkbookWithFormulas.xlsx"); | |
// Iterate through all the worksheets to remove formulas | |
foreach(Worksheet worksheet in workbookWithFormula.Worksheets) | |
worksheet.Cells.RemoveFormulas(); | |
// Save the resultant workbook | |
workbookWithFormula.Save("WorkbookWithoutFormulas.xlsx"); | |
} | |
} | |
} |
Imajte na umu da nam ne treba MS Excel niti se koristi interop za ovu operaciju. Nakon što Excel datoteka bude spremna, možete je također pretvoriti u druge formate kao što je opisano u članku na kako napraviti XPS iz excela u C#.