Mảng trong VBA

  • Thread starter vuaxumu
  • Ngày gửi
V

vuaxumu

Sơ cấp
13/2/06
1
0
0
36
Lam Dong
#1
Em đang làm 1 vba có liên quan đến mảng .Nó có thể như sau
Hàm SUM() ai cũng hiểu.bây giờ em muốn viết 1 Function có chức năng lấy dữ liệu và có thể Xử lý dữ liệu của mảng này như + - * /.và sau đó xuất ra lại một cell. vi du. A3=CONGMANG(B5:B15) thì nó sẽ trả về kết quả là SUM(B5:B15).Em cảm ơn.Nếu được thì cho em luôn cái code luôn hi`.:lol:
 
S

SA_DQ

Thành viên thân thiết
29/6/05
435
38
28
61
HCM city
#2
Không phải mãng đâu!

Nếu bạn muốn tham khảo VD về hàm mãng thì đây:
http://webketoan.com/forum/showthread.php?t=12438 #36
có VD về giải phương trình bậc 2: Nó trả về giá trị tại 3 ô
(Nếu thích bạn có thể chỉ cho trả về tại 2 hay 1 ô cũng được) :wall: :dzo:
Còn yêu cầu của bạn không phải dùng mãng đâu mà là:
Function PhepToanSoHoc(Rrange As Range, Optional PhepToan As Byte)
Dim xRange As Range, ib As Byte
If PhepToan = 0 Or PhepToan = 1 Then
1 For Each xRange In Rrange
2 PhepToanSoHoc = PhepToanSoHoc + xRange
3 Next xRange
ElseIf PhepToan = 2 Then
PhepToanSoHoc = Rrange(1, 1) - Rrange(2, 1)
ElseIf PhepToan = 3 Then
5 For Each xRange In Rrange
6 PhepToanSoHoc = PhepToanSoHoc * xRange
7 Next xRange
ElseIf PhepToan = 4 Then
PhepToanSoHoc = Rrange(1, 1) / Rrange(2, 1)
ElseIf PhepToan = 5 Then
For Each xRange In Rrange
PhepToanSoHoc = PhepToanSoHoc + (xRange * xRange)
Next xRange
elseif PhepToan = 6 then
For Each xRange In Rrange
ib = 1 + ib
PhepToanSoHoc = PhepToanSoHoc + (-1) ^(ib)/(xRange * xRange)
Next xRange
End If
End Function

1-3 thay =:
2 PhepToanSoHoc = Application.SUM(Rrange)
5-7 thay =:
6 PhepToanSoHoc = Application.PRODUCT(Rrange)
 
Sửa lần cuối:

Thành viên trực tuyến

  • auyeuch



Xem nhiều