Các phép tính phức tạp trong Excel VBA
Số hạng thứ k ^ th ^, T ~ k ~, của một chuỗi toán học nhất định được xác định theo công thức sau:
_T ~ k ~ _ = k ^ 2 ^ + 6k + 1 9k + 7 Số hạng đầu tiên, T ~ 1 ~, của chuỗi có được bằng cách thay k = 1 vào công thức tức là
_T ~ 1 ~ _ = 1 ^ 2 ^ + 6 + 1 = 1 và 9 + 7 2 _T ~ 2 ~ _ = 2 ^ 2 ^ + 12 + 1 = 17 … và cứ tiếp tục như vậy 18 + 7 25 Dưới đây chúng tôi sẽ xem xét một chương trình trong Excel VBA tính toán bất kỳ số hạng T ~ k ~ và tổng hợp các số hạng lên đến N.
Giải thích: người dùng có tùy chọn nhập “Tất cả” hoặc “Lẻ”, để tính tổng của N số hạng đầu tiên của chuỗi hoặc tổng của chỉ các số hạng lẻ lên đến N.
Đặt một nút lệnh trên trang tính của bạn và thêm các dòng mã sau:
-
Đầu tiên, chúng ta khai báo 4 biến kiểu Integer và một biến kiểu String.
Dim i, term, N, stepSize As Integer Dim sumType As String
-
Thứ hai, chúng tôi khởi tạo các biến.
i = 0 N = Range("C2").Value sumType = Range("C3").Value
-
Làm trống các trường.
Range("A8:B1000").Value = "" Range("C6").Value = ""
-
Xác định stepSize.
Select Case sumType Case Is = "All" stepSize = 1 Case Is = "Odd" stepSize = 2 Case Else MsgBox "Enter a valid expression in cell C3" End End Select
-
Thực hiện các phép tính.
For term = 1 To N Step stepSize Cells(8 + i, 1).Value = term Cells(8 + i, 2).Value = (term ^ 2 + (6 term) + 1) / ((9 term) + 7) Range("C6").Value = Range("C6").Value + Cells(8 + i, 2).Value i = i + 1 Next term
Kết quả: