Tìm các số tạo thành một tổng xác định (sưu tầm) (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

PhanTuHuong

VBA & VB.NET for Excel & AutoCad
Thành viên danh dự
Tham gia
13/6/06
Bài viết
7,201
Được thích
24,670
Trong Excel có cách nào để tìm ra 2 hay 3 số trong một danh sách gồm 30 số sao cho tổng của chúng là một giá trị xác định? Tôi đã thử dùng slover và goal seeker trong Excel nhưng không được.Để giải quyết yêu cầu này bạn có thể dùng macro sau:
Mã:
Private Function A(Byval R As Integer) As String
A = Cells(R, 1).Address(False, False)
End Function
Sub Test()
Colums(3).Clear
R = 1
T = Cells(1, 2)
For X = 1 To 30
For Y = X + 1 To 30
If Cells(X, 1) + Cells(Y, 1) = T Then
Cells(R, 3) = A(X) + “+” +A(Y)
R = R +1
Else
For Z = Y+1 To 30
If Cells(X, 1) + Cells(Y, 1) + Cells(Z, 1) = T Then
Cells(r, 3) = A(X) + “+”+A(Y) + ”+” + A(Z)
R = R + 1
End If
Next Z
End If
Next Y
Next X
End Sub

Macro này kiểm tra tất cả các tổ hợp của hai hay ba ô trong miền A1:A30 và báo lại các tổ hợp nào có tổng bằng giá trị lưu trong ô B1. Kết quả được ghi ra theo cột kể từ ô hiện thời.
 
Hàm này lập không nhất thiết cứ phải là 30 số mà có thể tùy biến bằng lệnh Inputbox, tôi sẽ sửa lại sau.
 
có thể cho em xin file excel để tham khảo được không anh
 
Web KT

Bài viết mới nhất

Back
Top Bottom