Использование формул в ячейках DataGridView - Visual Basic .NET
Формулировка задачи:
Собственно, нужно производить вычисления прямо в заполняемой ячейке датагрида, примерно как в экселе. Была идея перебора введенного выражения по символам математических операций (+, -, *, /), но тогда встает вопрос с вводом самих этих символов в переменную, которая заменит содержимое ячейки. Есть какой-либо способ засунуть выражение ячейки в переменную, чтобы переменная считала его не как текст, а как собственную формулу и вычислила результат?
Решение задачи: «Использование формул в ячейках DataGridView»
textual
Листинг программы
- Public Class Form1
- Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
- DGV.Rows.Add("2+2")
- DGV.Rows.Add("2+2*(3+7)")
- End Sub
- Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
- Dim obj = CreateObject("MSScriptControl.ScriptControl") : obj.Language = "VBScript"
- For Each row As DataGridViewRow In DGV.Rows
- Try
- row.Cells(1).Value = Val(obj.Eval(row.Cells(0).Value))
- Catch ex As Exception
- row.Cells(1).Value = "#ошибка"
- End Try
- Next
- End Sub
- End Class
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д