VintaSoft Imaging .NET SDK 14.0: Документация для .NET разработчика
В этом разделе
    XLSX: Работа с формулами на странице XLSX
    В этом разделе
    UI-контролы SpreadsheetEditorControl и WpfSpreadsheetEditorControl позволяют работать (просмотривать, добавлять, редактировать и удалять) с формулами в ячейках рабочего листа XLSX в настольном приложении (WinForms, WPF).
    Формулы можно изменять визуально с помощью мыши/клавиатуры или программно.


    Добавление формулы в выделенную ячейку рабочего листа XLSX

    Вот C#/VB.NET код, который демонстрирует, как добавить формулу в выделенную ячейку рабочего листа XLSX:
    public void AddFormulaToXlsxCell(Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetEditorControl editorControl)
    {
        // get visual editor for spreadsheet document
        Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetVisualEditor spreadsheetVisualEditor = editorControl.VisualEditor;
    
        string formula = "ABS(A1)+SUM(B2,B3)";
    
        // add formula to the focused cell
        spreadsheetVisualEditor.InsertFormulaInFocusedCell(formula);
        // result formula value: "=ABS(A1)+SUM(B2,B3)"
    }
    
    Public Sub AddFormulaToXlsxCell(editorControl As Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetEditorControl)
        ' get visual editor for spreadsheet document
        Dim spreadsheetVisualEditor As Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetVisualEditor = editorControl.VisualEditor
    
        Dim formula As String = "ABS(A1)+SUM(B2,B3)"
    
        ' add formula to the focused cell
        spreadsheetVisualEditor.InsertFormulaInFocusedCell(formula)
        ' result formula value: "=ABS(A1)+SUM(B2,B3)"
    End Sub
    


    Изменение формулы выделенной ячейки программно

    Вот C#/VB.NET код, который демонстрирует, как изменить формулу выделенной ячейки рабочего листа XLSX:
    public void ChangeValueOfXlsxCell(Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetEditorControl editorControl)
    {
        // get visual editor for spreadsheet document
        Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetVisualEditor spreadsheetVisualEditor = editorControl.VisualEditor;
    
        // get value or formula of focused cell
        string cellValue = spreadsheetVisualEditor.FocusedCellValue;
    
        // set value or formula of focused cell
        spreadsheetVisualEditor.FocusedCellValue = "0";
    }
    
    Public Sub ChangeValueOfXlsxCell(editorControl As Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetEditorControl)
        ' get visual editor for spreadsheet document
        Dim spreadsheetVisualEditor As Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetVisualEditor = editorControl.VisualEditor
    
        ' get value or formula of focused cell
        Dim cellValue As String = spreadsheetVisualEditor.FocusedCellValue
    
        ' set value or formula of focused cell
        spreadsheetVisualEditor.FocusedCellValue = "0"
    End Sub
    


    Редактирование формулы сфокусированной ячейки с помощью мыши и клавиатуры

    Вы можете редактировать формулу сфокусированной ячейки, используя текстовое поле на панели формул (внешний редактор) или используя текстовое поле в области ячейки (внутренний редактор).

    Если вы хотите создать формулу, ссылающуюся на другую ячейку, вам следует выполнить следующие шаги:
    Если вы хотите создать формулу, которая использует значений из нескольких ячеек, необходимо выполнить следующие действия:
    Если вы хотите просмотреть ячейки, которые используются в формуле, необходимо выполнить следующие действия:

    Удаление формулы выделенной ячейки рабочего листа XLSX

    Если вы хотите удалить формулу выделенной ячейки листа XLSX с помощью мыши, вам необходимо выполнить следующие шаги:
    Вот C#/VB.NET код, который демонстрирует, как удалить формулу выделенной ячейки листа XLSX:
    public void ClearXlsxCell(Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetEditorControl editorControl)
    {
        // get visual editor for spreadsheet document
        Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetVisualEditor spreadsheetVisualEditor = editorControl.VisualEditor;
    
        // clear contents (value and formula) of selected cells
        spreadsheetVisualEditor.ClearCellsContents();
    }
    
    Public Sub ClearXlsxCell(editorControl As Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetEditorControl)
        ' get visual editor for spreadsheet document
        Dim spreadsheetVisualEditor As Vintasoft.Imaging.Office.Spreadsheet.UI.SpreadsheetVisualEditor = editorControl.VisualEditor
    
        ' clear contents (value and formula) of selected cells
        spreadsheetVisualEditor.ClearCellsContents()
    End Sub
    


    Список поддерживаемых формул


    Вот список поддерживаемых формул "Дата и время":
    Вот список поддерживаемых "Инженерных" формул:
    Вот список поддерживаемых "Финансовых" формул:
    Вот список поддерживаемых "Информационных" формул:
    Вот список поддерживаемых "Логических" формул:
    Вот список поддерживаемых формул "Ссылки и массивы":
    Вот список поддерживаемых "Математических и тригонометрических" формул:
    Вот список поддерживаемых "Статистических" формул:
    Вот список поддерживаемых "Текстовых" формул: