Private Sub CommandButton1_Click()
Dim i As Integer
Dim j As Integer
Dim x As Double
Dim w As String
w = InputBox("w =", " очистить диапазон? - (Y,y,Д,д)/N ")
If (w = "Y") Or (w = "y") Or (w = "Д") Or (w = "д") Then Range(Cells(7, 1), Cells(28, 3)) = Clear
xn = InputBox("xn =", " Введите начало диапазона ", -3)
xk = InputBox("xk =", " Введите конец диапазона ", 7)
xd = InputBox("xd =", " Введите шаг изменения переменной ", 0.5)
i = InputBox("i =", " Введите начало таблицы, строку ", 7)
j = InputBox("j =", " Введите начало таблицы, столбец ", 1)
Cells(i, j) = "X": Cells(i, j + 1) = "G1": Cells(i, j + 2) = "G2"
i = i + 1
x = xn
Do While x <= xk
Cells(i, j) = Format(x, "0.0#")
If x <= 0 Then
Cells(i, j + 1) = Format(g(x), "#0.0###")
Else
Cells(i, j + 2) = Format(g(x), "#0.0###")
End If
x = x + xd: i = i + 1
Loop
End Sub
Private Sub CommandButton2_Click()
Dim i As Integer
Dim j As Integer
Dim x As Double
w = InputBox("w =", " очистить диапазон? - (Y,y,Д,д)/N ")
If (w = "Y") Or (w = "y") Or (w = "Д") Or (w = "д") Then Range(Cells(7, 4), Cells(28, 6)) = Clear
xn = InputBox("xn =", " Введите начало диапазона ", -3)
xk = InputBox("xk =", " Введите конец диапазона ", 7)
xd = InputBox("xd =", " Введите шаг изменения переменной ", 0.5)
i = InputBox("i =", " Введите начало таблицы, строку ", 7)
j = InputBox("j =", " Введите начало таблицы, столбец ", 4)
Cells(i, j) = "X": Cells(i, j + 1) = "G1": Cells(i, j + 2) = "G2"
i = i + 1
x = xn
Do
Cells(i, j) = Format(x, "0.0#")
If x <= 0 Then
Cells(i, j + 1) = Format(g(x), "#0.0###")
Else
Cells(i, j + 2) = Format(g(x), "#0.0###")
End If
x = x + xd: i = i + 1
Loop While x <= xk
End Sub
Private Sub CommandButton3_Click()
Dim i As Integer
Dim j As Integer
Dim x As Double
Dim w As String
w = InputBox("w =", "очистить диапазон? - (Y,y,Д,д)/N")
If (w = "Y") Or (w = "y") Or (w = "Д") Or (w = "д") Then Range(Cells(7, 7), Cells(28, 9)) = Clear
w = InputBox("w =", " очистить диапазон? - Y/N ")
If w = "Y" Then Range(Columns(1), Rows(15)) = Clear
xn = InputBox("xn =", " Введите начало диапазона ", -3)
xk = InputBox("xk =", " Введите конец диапазона ", 7)
xd = InputBox("xd =", " Введите шаг изменения переменной ", 0.5)
i = InputBox("i =", " Введите начало таблицы, строку ", 7)
j = InputBox("j =", " Введите начало таблицы, столбец ", 7)
Cells(i, j) = "X": Cells(i, j + 1) = "G1": Cells(i, j + 2) = "G2"
i = i + 1
x = xn
Do Until x > xk
Cells(i, j) = Format(x, "0.0#")
If x <= 0 Then
Cells(i, j + 1) = Format(g(x), "#0.0###")
Else
Cells(i, j + 2) = Format(g(x), "#0.0###")
End If
x = x + xd: i = i + 1
Loop
End Sub
Private Sub CommandButton4_Click()
Dim i As Integer
Dim j As Integer
Dim x As Double
Dim w As String
w = InputBox("w =", " очистить диапазон? - (Y,y,Д,д)/N ")
If (w = "Y") Or (w = "y") Or (w = "Д") Or (w = "д") Then Range(Cells(7, 10), Cells(28, 12)) = Clear
xn = InputBox("xn =", " Введите начало диапазона ", -3)
xk = InputBox("xk =", " Введите конец диапазона ", 7)
xd = InputBox("xd =", " Введите шаг изменения переменной ", 0.5)
i = InputBox("i =", " Введите начало таблицы, строку ", 7)
j = InputBox("j =", " Введите начало таблицы, столбец ", 10)
Cells(i, j) = "X": Cells(i, j + 1) = "G1": Cells(i, j + 2) = "G2"
i = i + 1
x = xn
Do
Cells(i, j) = Format(x, "0.0#")
If x <= 0 Then
Cells(i, j + 1) = Format(g(x), "#0.0###")
Else
Cells(i, j + 2) = Format(g(x), "#0.0###")
End If
x = x + xd: i = i + 1
Loop Until x > xk
End Sub
Private Sub CommandButton5_Click()
Dim i As Integer
Dim j As Integer
Dim x As Double
Dim w As String
w = InputBox("w =", " очистить диапазон? - (Y,y,Д,д)/N ")
If (w = "Y") Or (w = "y") Or (w = "Д") Or (w = "д") Then Range(Cells(7, 13), Cells(28, 15)) = Clear
xn = InputBox("xn =", " Введите начало диапазона ", -3)
xk = InputBox("xk =", " Введите конец диапазона ", 7)
xd = InputBox("xd =", " Введите шаг изменения переменной ", 0.5)
i = InputBox("i =", " Введите начало таблицы, строку ", 7)
j = InputBox("j =", " Введите начало таблицы, столбец ", 13)
Cells(i, j) = "X": Cells(i, j + 1) = "G1": Cells(i, j + 2) = "G2"
i = i + 1
x = xn
While x <= xk
Cells(i, j) = Format(x, "0.0#")
If x <= 0 Then
Cells(i, j + 1) = Format(g(x), "#0.0###")
Else
Cells(i, j + 2) = Format(g(x), "#0.0###")
End If
x = x + xd: i = i + 1
Wend
End Sub
Private Sub CommandButton6_Click()
Dim i As Integer
Dim j As Integer
Dim x As Double
Dim w As String
w = InputBox("w =", " очистить диапазон? - (Y,y,Д,д)/N ")
If (w = "Y") Or (w = "y") Or (w = "Д") Or (w = "д") Then Range(Cells(7, 16), Cells(28, 18)) = Clear
xn = InputBox("xn =", " Введите начало диапазона ", -3)
xk = InputBox("xk =", " Введите конец диапазона ", 7)
xd = InputBox("xd =", " Введите шаг изменения переменной ", 0.5)
i = InputBox("i =", " Введите начало таблицы, строку ", 7)
j = InputBox("j =", " Введите начало таблицы, столбец ", 16)
Cells(i, j) = "X": Cells(i, j + 1) = "G1": Cells(i, j + 2) = "G2"
i = i + 1
For x = xn To xk Step xd
Cells(i, j) = Format(x, "0.0#")
If x <= 0 Then
Cells(i, j + 1) = Format(g(x), "#0.0###")
Else
Cells(i, j + 2) = Format(g(x), "#0.0###")
End If
i = i + 1
Next x
End Sub
Private Sub CommandButton7_Click()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim x() As Double
Dim y() As Double
Dim w As String
w = InputBox("w =", " очистить диапазон? - (Y,y,Д,д)/N ")
If (w = "Y") Or (w = "y") Or (w = "Д") Or (w = "д") Then Range(Cells(7, 19), Cells(28, 21)) = Clear
‘If w = "Y" Then Range(Columns(1), Rows(19)) = Clear
xn = InputBox("xn =", " Введите начало диапазона ", -3)
xk = InputBox("xk =", " Введите конец диапазона ", 7)
xd = InputBox("xd =", " Введите шаг изменения переменной ", 0.5)
i = InputBox("i =", " Введите начало таблицы, строку ", 7)
j = InputBox("j =", " Введите начало таблицы, столбец ", 19)
Cells(i, j) = "X": Cells(i, j + 1) = "G1": Cells(i, j + 2) = "G2"
i = i + 1
i0 = i
ReDim x((xk - xn) / xd)
ReDim y((xk - xn) / xd)
For k = 0 To (xk - xn) / xd
x(k) = xn + k * xd
y(k) = g(x(k))
Next k
For Each n In x
Cells(i, j) = Format(n, "0.0#")
i = i + 1
Next n
i = i0
k = 0
For Each n In y
If x(k) <= 0 Then Cells(i, j + 1) = Format(n, "#0.0###") Else Cells(i, j + 2) = Format(n, "#0.0###")
i = i + 1
k = k + 1
Next n
End Sub
Private Sub CommandButton1_Click()
Dim i As Integer
Dim j As Integer
Dim x As Single
Dim xn As Single
Dim xk As Single
Dim dx As Single
Xn=InputBox(“Xn=”,” Ввод начального значения X ”,-2, 8000, 2000)
Xk=InputBox(“Xk=”,” Ввод конечного значения X ”, 3, 800,1000)
Dx=Input(“dX=”,” Ввод значения шага X ”, 0.5, 8000, 2000)
I=InputBox(“i=”,” Ввод начала таблицы, строка i ”, 1, 8000, 1000)
J=InputBox(“j=”,” Ввод начала, столбец j ”, 1, 8000, 2000)
X=xn: Cells(i, j)=”X”: Cells(i, j+1)=”Y”
10 y=x^2
Cells(i+1, j)=x
Cells(i+1, j+1)=y
x=x+dx
i=i+1
If x>xk Then GoTo 20 Else GoTo 10
20 End Sub
Некоторые комментарии к программе:
– Объявление простых переменных, строго говоря, в VBA не требуется, но бывают случаи, когда именно из-за этого программа работает не правильно или не работает вообще;
– В операторе InputBox используются пять параметров, первые два – символьные константы, их использование объясняется при появлении окна InputBox, третий параметр– предлагаемое значение, которое можно изменить, четвертый и пятый параметры– координаты левого верхнего угла окна InputBox на экране;
– Конечно, можно написать более совершенную программу, исключающую применение условного оператора и тем более операторов перехода, применив один из операторов цикла, но предполагается, что на данном этапе студенты еще не знакомы с разновидностями операторов цикла и поэтому главным критерием качества программного продукта является решение поставленной задачи;