Ինչպես հեռացնել բանաձևը Excel-ում առանց C#-ի բովանդակությունը հեռացնելու

Այս ձեռնարկում մենք կսովորենք, թե ինչպես հեռացնել Excel-ի բանաձևը՝ առանց C#-ի բովանդակությունը հեռացնելու: Երբեմն մենք պետք է համօգտագործենք Excel ֆայլեր ուրիշների հետ, որոնք պարունակում են հաշվարկված արժեքներ, բայց մենք չենք ցանկանում բացահայտել մեր բանաձևերը: Սա պահանջում է ջնջել Excel-ի բանաձևը, բայց պահել բովանդակությունը C#-ում, ինչպես նկարագրված է հետևյալ քայլերում:

Excel-ի բանաձևը հեռացնելու քայլեր, բայց արժեքը պահպանեք C#-ի միջոցով

  1. Ավելացրեք Aspose.Cells for .NET նախագծին՝ օգտագործելով NuGet փաթեթի կառավարիչը
  2. Ավելացնել հղում System և Aspose.Cells անվանատարածքի համար
  3. Ակնթարթային լիցենզիա՝ փորձնական տարբերակի ջրանիշից խուսափելու համար
  4. Բեռնել workbook-ը, որը պարունակում է տվյալներ և բանաձև
  5. Ստացեք այն բջիջի հղումը, որի բանաձևը պետք է հեռացվի
  6. Պահպանեք արժեքը ժամանակավոր փոփոխականում և հեռացրեք բանաձևը
  7. Վերականգնել բջիջի արժեքը՝ օգտագործելով ժամանակավոր փոփոխականը
  8. Պահպանեք աշխատանքային գրքույկը

Վերոնշյալ քայլերը նկարագրում են Excel-ի բանաձևը հեռացնելու գործընթացը, բայց արժեքը պահելով C#-ում: Մենք մուտք ենք գործում ցանկալի բջիջ աշխատաթերթից և պահում դրա արժեքը ժամանակավոր փոփոխականում: Այնուհետև մենք հանում ենք բանաձևը բջիջից և այն նորից լրացնում արժեքով ժամանակավոր փոփոխականից։ Ի վերջո, մենք պահպանում ենք աշխատանքային գրքույկը:

Կոդ Excel-ի բանաձևը հեռացնելու և արժեքը 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");
}
}
}

Վերոնշյալ օրինակելի կոդը հեռացնում է բանաձևը մեկ բջիջից: Այնուամենայնիվ, եթե ցանկանում եք հեռացնել բանաձևերը ամբողջ աշխատանքային գրքույկից, կարող եք օգտագործել WorkSheet.Cells.RemoveFormulas(), որը հեռացնում է բոլոր բանաձևերը ամբողջ աշխատանքային գրքույկից և փոխարինում է յուրաքանչյուր բջիջի արժեքը համապատասխան բանաձևի արդյունքով: Հետևյալ կոդը կարող է օգտագործվել excel-ի բանաձևերը ջնջելու համար, բայց բովանդակությունը C#-ով պահել ամբողջ աշխատանքային գրքույկում:

Կոդ՝ Excel-ի բանաձևերը հեռացնելու համար, բայց արժեքը պահելով՝ օգտագործելով 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");
}
}
}

Նկատի ունեցեք, որ այս գործողության համար ոչ մեզ պետք է MS Excel, ոչ էլ interop-ը: Երբ Excel ֆայլը պատրաստ լինի, կարող եք նաև այն փոխարկել այլ ձևաչափերի, ինչպես նկարագրված է ինչպես ստեղծել XPS excel-ից C#-ում-ի հոդվածում:

 Հայերեն