Hiện thị giá trị nếu giá trị của hàm là mảng (1 người xem)

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

bucthucuoi

Thành viên mới
Tham gia
14/9/06
Bài viết
14
Được thích
9
Nghề nghiệp
SV
Em đang muốn đưa ra kết quả của một hàm dưới dạng mảng mà chưa biết làm thế nào.Help me.SOS.+-+-+-+




---------------
OverAC: bác nên đặt tên đề tài cho rõ nghĩa nhé.
 
Chỉnh sửa lần cuối bởi điều hành viên:
Bác SQ_AD ơi, đấy có phải là Ctrl+Shift+Enter không vậy, bác cứ ví dụ cụ thể đi bác ơi.
 
Upvote 0
VD giải bài toán "Trăm trâu, trăm cỏ" bằng mảng đây:

muốn đưa ra kết quả của một hàm dưới dạng mảng.Help me..+-+-+-+
VD Giải các bài toán:
1./ (/ừa gà vừa chó, nha:
Mã:
[B]Function TraVeMangGiaTri( ) As Varỉant [/B]
 Dim MangKQ( 1 to 2)
  MangKQ(2)= (100 - 72)/2:   MangKQ(1) = 36 - MangKQ(2)
 TraVeMangGiaTri = MangKQ
[B]End Function[/B]
Để thể hiện KQ của hàm, ta chọn 2 ô trống liền kề; nhập cú fáp hàm & (điều QTr) là kết thúc = tổ hợp 3 fím quen thuộc của hàm mảng
(Để hiểu thêm, bạn chọn vùng 4 ô kề nhau trong 2 hàng xem sau)

2./ Hàm trả về dữ liệu của 1 vùng chọn
Mã:
[B]Function Array0()[/B]
On Error GoTo Loi_array
 Dim MngTr():            Dim MngS()
 dim iJ As Integer: Dim StrC As String

 Sheets("S9").Select
 iJ = ActiveCell.Row + 9
 StrC = "A" & CStr(iJ) & ":D" & CStr(iJ)
 MngTr() = Range(StrC).Value
 MngS() = Range(StrC).Offset(-1, 0).Value
 If iJ Mod 2 = 0 Then Array0 = MngTr() Else Array0 = MngS()

Err_Array:              Exit Function
Loi_array:
    MsgBox Error(), , Str(Err) & Str(Erl)
    Resume Err_Array
[B]End Function[/B]
Ta chọn 1 vùng 4 ô trống cùng hàng; nhập tên hàm & kết thúc = tổ hợp 3 fím mà bạn nêu!
VD2 Hàm sẽ liệt kê toàn bộ các tập tin trong thư mục (với đường dẫn đầy đủ) được nhập vô khi hàm yêu cầu; Hàm hiển thị trên dòng (chứ không trên cột?!) trống.

3./ Hàm trả về tên các tập tin trong thư mục FileSpec (với đường dẫn đầy đủ):
Mã:
[B]Function FileList(FileSpec As String) As Variant[/B]
    [COLOR="Blue"] ' Returns an array of filenames that match FileSpec
     '   If no matching files are found, it returns False[/COLOR]
    Dim FileArray() As Variant
    Dim FileCount As Integer:           Dim FileName As String
    On Error GoTo NoFiles
     
    FileCount = 0
    FileName = Dir(FileSpec)
    If FileName = "" Then GoTo NoFiles
   [COLOR="blue"]  '   Loop until no more matching files are found[/COLOR]
    Do While FileName <> ""
        FileCount = FileCount + 1
        ReDim Preserve FileArray(1 To FileCount)
        FileArray(FileCount) = FileName
        FileName = Dir()
    Loop
    FileList = FileArray
    Exit Function
     
NoFiles:
    FileList = False
[B]End Function[/B]
4. Giải bài toán 100 trâu, 100 cỏ bằng excel
Mã:
Option Explicit:        Option Base 1
Dim NNghiem(4, 1)

[B]Sub Macro2()[/B]
 Msgbox "HAY CAP NHAT LAI HAM!"
[B]End Sub[/b]
Mã:
[b]
Function TramTrau()[/B]
[COLOR="Blue"]'  recorded 30/09[/COLOR]
 Dim iZ As Integer
 Dim RngA As Range, RngB As Range, RngC As Range, RngD As Range
 
 Sheets("S1").Select
 NNghiem(1, 1) = "Nghiệm của hệ:"
 For iZ = 2 To 4
    NNghiem(iZ, 1) = ""
 Next iZ

 Set RngD = Range("A1:C3"):     Set RngC = Range("A13:C15")
 Set RngB = Range("A9:C11"):    Set RngA = Range("A5:C7")
 
 NNghiem(2, 1) = Application.MDeterm(RngA) / Application.MDeterm(RngD)
 NNghiem(3, 1) = Application.MDeterm(RngB) / Application.MDeterm(RngD)
 NNghiem(4, 1) = Application.MDeterm(RngC) / Application.MDeterm(RngD)
 
 Set RngA = Nothing:        Set RngD = Nothing
 Set RngC = Nothing:        Set RngB = Nothing
 
 TramTrau = NNghiem
 
[B]End Function[/B]
Bài toán này giải được trong excel phải có thêm phần suy luận & nhờ Combobox :
Suy luận: Số trâu đứng chỉ có thể < 21 ; nên nghiệm có thể chọn lần lượt tư combobox (thuật mò mẩm í mà!)
Nhưng rất may có nghiệm đặc biệt: Số trâu đứng X = 0 (=> số nằm & già tương ứng là 25 & 75)

Cụ thể trong excel: khi ta chọn lần lượt giá trị X = 0 - 20 cho ma trận;
Sao đó tô chọn 4 ô B18:B21 & kết thúc = tổ hợp 3 fím;
Lặp lại qui trình với ~ X # nữa cho đến khi chán!
Chúc vui nha!

российская – моя вторая:bye1:
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Cho mình hỏi là mình muoón nhập 1 giá trị ở 1 sheet, thì nó sẽ link với 1 sheet khác, và tìm tất cả các giá trị liên quan tới sheet đó thì làm sao ạ
 
Upvote 0

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

Back
Top Bottom