В современном мире автоматизации и обработки данных Excel становится незаменимым инструментом для бизнеса, аналитики и разработки решений.
Один из наиболее распространенных сценариев — необходимость очистки листов, например, удаление формул из ячеек, что приводит к их преобразованию
в статические значения. В этой статье мы рассмотрим, как реализовать удаление формул из файлов Excel на C# и .NET с помощью библиотеки SautinSoft.Excel.
Excel — мощный инструмент для хранения и анализа данных. Формулы автоматизируют вычисления, повышая эффективность работы, но существуют ситуации,
когда их необходимо удалить:
Полный код
using SautinSoft.Excel;
using System.IO;
namespace Example
{
class Program
{
static void Main(string[] args)
{
// Get your free key here:
// https://sautinsoft.com/start-for-free/
Sample();
}
/// <summary>
/// Delete formulasin the cell range.
/// </summary>
/// <remarks>
/// Details:
/// </remarks>
static void Sample()
{
string inpFile = @"..\..\..\Example.xlsx";
string outFile = @"..\..\..\Result.xlsx";
ExcelDocument excelDocument = ExcelDocument.Load(inpFile);
CellRange range = excelDocument.Worksheets[0].Cells.GetSubrange("A7", "B12");
foreach (ExcelCell cell in range)
{
cell.Formula = null;
}
excelDocument.Save(outFile);
// Important for Linux: Install MS Fonts
// sudo apt install ttf-mscorefonts-installer -y
// Open the result for demonstration purposes.
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(outFile) { UseShellExecute = true });
}
}
}Imports SautinSoft.Excel
Imports System.IO
Namespace Example
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Get your free key here:
' https://sautinsoft.com/start-for-free/
Sample()
End Sub
''' <summary>
''' Delete formulasin the cell range.
''' </summary>
''' <remarks>
''' Details:
''' </remarks>
Private Shared Sub Sample()
Dim inpFile As String = "..\..\..\Example.xlsx"
Dim outFile As String = "..\..\..\Result.xlsx"
Dim excelDocument As ExcelDocument = ExcelDocument.Load(inpFile)
Dim range As CellRange = excelDocument.Worksheets(0).Cells.GetSubrange("A7", "B12")
For Each cell As ExcelCell In range
cell.Formula = Nothing
Next cell
excelDocument.Save(outFile)
' Important for Linux: Install MS Fonts
' sudo apt install ttf-mscorefonts-installer -y
' Open the result for demonstration purposes.
System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(outFile) With {.UseShellExecute = True})
End Sub
End Class
End Namespace
Если вам нужен пример кода или у вас есть вопрос: напишите нам по адресу support@sautinsoft.ru или спросите в онлайн-чате (правый нижний угол этой страницы) или используйте форму ниже: