Các câu hỏi về mảng trong VBA (Array)

Liên hệ QC

viehoai

Thành viên gắn bó
Tham gia
22/5/09
Bài viết
2,600
Được thích
2,907
Xin các anh chị giúp đỡ Code Gán các giá trị của một Range là các phần tử của Mãng
Ví dụ: Tôi có các giá trị của Range("A1:A10"). Tôi muốn viết code để gán giá trị của các cells từ A1:A10 là các phần tử của Mãng Arr chẳn hạn.
Xin cảm ơn các anh chị
 
Em có vùng từ [A1:A30] trong đó nó chỉ có 10 số liệu duy nhất thôi, vậy mình khi gán vào vùng nào đó do sợ không đủ nên mình cho mảng đó tới 20 dòng vậy dư thừa quá vậy mình chỉ có cách dùng countif không hả các anh?
PHP:
Sub Test()
  Dim Clls As Range, Dic As Object, arr(), i
  Set Dic = CreateObject("Scripting.Dictionary")
  ReDim Preserve arr(20, 1)             <--- Em thay khoi Preserve cung duoc vay khi nao minh can Preserve
  For Each Clls In Range("A1:A30")
    If Not Dic.Exists(Clls.Value) Then <--- Xét xem Clls.Value đã có trong Dic hay chưa, nếu chưa có thì thực hiện tiếp đoạn dưới 
     Dic.Add Clls.Value, ""
     i = i + 1
     arr(i, 1) = Clls.Value
     End If
  Next
   Sheet1.[D1].Resize(UBound(arr, 1)) = arr
End Sub
Với giải pháp lọc duy nhất mà dùng code thì Dictionary mới chính là sở trường. Nó cũng đâu có khó hiểu lắm đâu ---> Bạn đang nghiên cứu về Array, thiết nghĩ cũng nên xem qua về Dictionary
Bắt đầu em thấy thích Scipting.dictionary rồi đó nhen, cố gắng tìm hiểu mới được!!!! ...ăc…ặc…..Thanks
http://www.giaiphapexcel.com/forum/showthread.php?26987-Th%E1%BA%AFc-m%E1%BA%AFc-v%E1%BB%81-code-c%C3%B3-li%C3%AAn-quan-%C4%91%E1%BA%BFn-x%E1%BB%AD-l%C3%BD-m%C3%A3ng-%28Array%29
 
Lần chỉnh sửa cuối:
Upvote 0
Em có vùng từ [A1:A30] trong đó nó chỉ có 10 số liệu duy nhất thôi, vậy mình khi gán vào vùng nào đó do sợ không đủ nên mình cho mảng đó tới 20 dòng vậy dư thừa quá vậy mình chỉ có cách dùng countif không hả các anh?
Tuyệt đối đừng dùng các hàm của Excel vào code, nó là nguyên nhân khiến code chậm đi
Mảng dư cũng đâu có sao, phần tử nào chưa gán giá trị thì nó sẽ = rổng thôi
Ví dụ:
PHP:
Sub Test()
  Dim Clls As Range, Dic As Object, arr(), i As Long, Tmp
  Set Dic = CreateObject("Scripting.Dictionary")
  ReDim arr(1 To 20, 1 To 1)
  For Each Clls In Range("A1:A30")
    If Not Dic.Exists(Clls.Value) Then
      Dic.Add Clls.Value, ""
      i = i + 1
      arr(i, 1) = Clls.Value
    End If
  Next
  Range("D1").Resize(Dic.Count).Value = arr
End Sub
(Code của bạn có sai mấy chổ, tôi đã sửa lại)
Ngoài ra, nếu bạn cương quyết tạo mảng có kích thước vừa đủ thì sau khi Add vào Dictionary xong, bạn thêm 1 vòng lập nữa:
PHP:
Sub Test2()
  Dim Dic As Object, arr(), sArray, i As Long, Item, Tmp
  Set Dic = CreateObject("Scripting.Dictionary")
  sArray = Range("A1:A30").Value
  For Each Item In sArray
    If Not Dic.Exists(Item) Then
      Dic.Add Item, ""
    End If
  Next
  ReDim arr(1 To Dic.Count, 1 To 1)
  Tmp = Dic.Keys
  For i = 1 To Dic.Count
    arr(i, 1) = Tmp(i - 1)
  Next
  Range("D1").Resize(Dic.Count).Value = arr
End Sub
Dù thêm vòng lập nữa nhưng chắc chắn tốc độ vẫn sẽ nhanh hơn so với khi bạn dùng COUNTIF
Lưu ý:
- Đoạn code dưới mới đúng là làm việc hoàn toàn với mảng, cái trên chưa phải
- Các đoạn code vẫn chưa có động tác bẩy lỗi và loại bỏ phần tử rổng
 
Lần chỉnh sửa cuối:
Upvote 0
Em muốn lây dữ liệu vùng A2:A14 để cho ra kết quả ơ cột C mà sao thấy đoạn code nó hơi sao sao đó. Mặt dù em test thử thì tốc độ vẫn ok nếu dữ liệu nhiều chắc chắc có trục trặc mong anh chị các bạn giúp đỡ.Thanks
PHP:
Sub noimang()
Dim arr, sarr(), li As Long, lj As Long, item, dic As Object
arr = [A2:B14]
Set dic = CreateObject("Scripting.Dictionary")
ReDim sarr(1 To UBound(arr), 1 To UBound(arr, 2))
For li = 1 To UBound(arr)
If Len(arr(li, 1)) = 4 Then
        lj = lj + 1
        sarr(lj, 1) = arr(li, 1) & " - " & arr(li, 2)
    End If
Next
lj = 0
For Each item In sarr
    If Not dic.exists(item) Then
        dic.Add item, ""
        lj = lj + 1
        sarr(lj, 1) = item
    End If
Next
Sheet1.[e1].Resize(dic.Count) = sarr
End Sub

Cho em hỏi đoạn code trên có nghĩ là gì
 

File đính kèm

  • noidulieu.xls
    45 KB · Đọc: 123
Upvote 0
Em muốn lây dữ liệu vùng A2:A14 để cho ra kết quả ơ cột C mà sao thấy đoạn code nó hơi sao sao đó. Mặt dù em test thử thì tốc độ vẫn ok nếu dữ liệu nhiều chắc chắc có trục trặc mong anh chị các bạn giúp đỡ.Thanks
PHP:
Sub noimang()
Dim arr, sarr(), li As Long, lj As Long, item, dic As Object
arr = [A2:B14]
Set dic = CreateObject("Scripting.Dictionary")
ReDim sarr(1 To UBound(arr), 1 To UBound(arr, 2))
For li = 1 To UBound(arr)
If Len(arr(li, 1)) = 4 Then
        lj = lj + 1
        sarr(lj, 1) = arr(li, 1) & " - " & arr(li, 2)
    End If
Next
lj = 0
For Each item In sarr
    If Not dic.exists(item) Then
        dic.Add item, ""
        lj = lj + 1
        sarr(lj, 1) = item
    End If
Next
Sheet1.[e1].Resize(dic.Count) = sarr
End Sub
Cho em hỏi đoạn code trên có nghĩ là gì
Tôi thì làm vầy:
PHP:
Sub Noimang()
  Dim sArray, Arr(), lR As Long, n As Long, Dic As Object, Tmp As String
  On Error Resume Next
  sArray = Sheet1.Range("A2:B11").Value
  Set Dic = CreateObject("Scripting.Dictionary")
  ReDim Arr(1 To UBound(sArray), 1 To 1)
  For lR = 1 To UBound(sArray, 1)
    If Len(sArray(lR, 1)) = 4 Then
      Tmp = sArray(lR, 1) & " - " & sArray(lR, 2)
      If Not Dic.Exists(Tmp) Then
        Dic.Add Tmp, ""
        n = n + 1
        Arr(n, 1) = Tmp
      End If
    End If
  Next
  Sheet1.Range("E1").Resize(Dic.Count).Value = Arr
End Sub
1 vòng lập thôi bạn à ---> Lúc add dữ liệu vào Dictionary Object, đồng thời ta lấy dữ liệu cho vào Array kết quả luôn
Lưu ý:
- Địa chỉ vùng dữ liệu nên ghi rõ ràng, có đầy đủ tên sheet
- Tên biến nên đặt sao cho dễ nhìn nhất (với dữ liệu nguồn, tôi thường đặt nó tên là sArray <===> Source Array)
 
Upvote 0
Cho em hỏi thêm 1 câu nữa là dữ liệu vùng A2:B11 nằm không theo thứ tự A-->Z chẳng hạn, mà em muốn dữ liệu đầu ra của mình phải theo thứ tự A--> Z. Vậy mình làm thế nào để dữ liệu đầu ra theo thứ tự với điều kiện không làm thay đổi thứ tự vung A2:B11. Em thử phương pháp Sort mà không được vì nó làm thay đổi dữ liệu đầu vào. Em có tham khảo cách Sort mảng 2 chiều của anhtuan1066 mà không biết áp dụng thế nào mong các anh chị, các bạn hướng dẫn giúp thanks
http://www.giaiphapexcel.com/forum/showthread.php?47929-Sort-m%E1%BA%A3ng-2-chi%E1%BB%81u
 
Upvote 0
Cho em hỏi thêm 1 câu nữa là dữ liệu vùng A2:B11 nằm không theo thứ tự A-->Z chẳng hạn, mà em muốn dữ liệu đầu ra của mình phải theo thứ tự A--> Z. Vậy mình làm thế nào để dữ liệu đầu ra theo thứ tự với điều kiện không làm thay đổi thứ tự vung A2:B11. Em thử phương pháp Sort mà không được vì nó làm thay đổi dữ liệu đầu vào. Em có tham khảo cách Sort mảng 2 chiều của anhtuan1066 mà không biết áp dụng thế nào mong các anh chị, các bạn hướng dẫn giúp thanks
http://www.giaiphapexcel.com/forum/showthread.php?47929-Sort-m%E1%BA%A3ng-2-chi%E1%BB%81u
Bạn đưa dữ liệu lên đi (bao gồm cả kết quả mong muốn) rồi tôi sẽ thử xem thế nào
 
Upvote 0
Em đưa dữ liệu anh xem giúp nhen, chủ yếu dữ liệu em đưa vào Combobox để lấy dữ liệu ở từng Chi Nhánh. Thanks

Có phải Mã số nào thì tương ứng với Chi nhánh đó đúng không? Rồi sau đó tại cột C kết quả sẽ cho ra cấu trúc "MS - CN" đúng thế không? Nếu vậy thì quá đơn giản!

Tại A2:B14 tôi tạm đặt name là DuLieu, bạn có thể cho nó thành name động càng tốt.

Tại Combobox chọn thuộc tính ColumnCount = 2, ListFillRange = DuLieu

Viết thêm đoạn code cho Combobox nữa là xong:

PHP:
Private Sub ComboBox1_Change()
  With ComboBox1
    [C65536].End(xlUp).Offset(1).Value = .Value & " - " & .Column(1)
  End With
End Sub

Không cần phải dùng mảng gì cho phức tạp vụ!
 

File đính kèm

  • noidulieu.xls
    65.5 KB · Đọc: 82
Upvote 0
Có phải Mã số nào thì tương ứng với Chi nhánh đó đúng không? Rồi sau đó tại cột C kết quả sẽ cho ra cấu trúc "MS - CN" đúng thế không? Nếu vậy thì quá đơn giản!

Tại A2:B14 tôi tạm đặt name là DuLieu, bạn có thể cho nó thành name động càng tốt.

Tại Combobox chọn thuộc tính ColumnCount = 2, ListFillRange = DuLieu

Viết thêm đoạn code cho Combobox nữa là xong:

PHP:
Private Sub ComboBox1_Change()
  With ComboBox1
    [C65536].End(xlUp).Offset(1).Value = .Value & " - " & .Column(1)
  End With
End Sub

Không cần phải dùng mảng gì cho phức tạp vụ!
Không phải anh ơi, Ý em là muốn thừa hưởng kết quả ở bài 64, có nghĩa là khi lấy giá trị duy nhất rồi đưa vào combobox cái này em làm được từ bài 64 nhưng mà lỡ dữ liệu không theo thứ tự thì sẽ làm khó trong việc tìm dữ liệu trong combobox thôi, nên em muốn rồi mình sort dữ liệu trong combobox theo thứ tự vậy thôi, em muốn học cách sort dữ liệu trực tiếp trên mảng luôn đó mà chỉ vậy thôi. Cảm ơn
 
Upvote 0
Không phải anh ơi, Ý em là muốn thừa hưởng kết quả ở bài 64, có nghĩa là khi lấy giá trị duy nhất rồi đưa vào combobox cái này em làm được từ bài 64 nhưng mà lỡ dữ liệu không theo thứ tự thì sẽ làm khó trong việc tìm dữ liệu trong combobox thôi, nên em muốn rồi mình sort dữ liệu trong combobox theo thứ tự vậy thôi, em muốn học cách sort dữ liệu trực tiếp trên mảng luôn đó mà chỉ vậy thôi. Cảm ơn
Nếu vậy thì chỉ là Sort mảng 1 chiều thôi (đâu phải 2 chiều)
Code như vầy:
1> Hàm Sort mảng 1 chiều
PHP:
Function Sort1DArray(ByVal Arr, Optional ByVal isText As Boolean = False, Optional ByVal isDESC As Boolean = False)
  Dim sCommand As String
  sCommand = "('" & Join(Arr, vbBack) & "').split('" & vbBack & "').sort("
  If isText Then
    sCommand = sCommand & ")"
  Else
    sCommand = sCommand & "function(a,b){return (a-b)})"
  End If
  If isDESC Then sCommand = sCommand & ".reverse()"
  sCommand = sCommand & ".join('" & vbBack & "')"
  With CreateObject("MSScriptControl.ScriptControl")
    .Language = "JavaScript"
    Sort1DArray = Split(.Eval(sCommand), vbBack)
  End With
End Function
2> Code nạp ComboBox
PHP:
Sub AddCombo()
  Dim sArray, Arr(), lR As Long, n As Long, Dic As Object, Tmp As String
  On Error Resume Next
  sArray = Sheet1.Range("A2:B11").Value
  Set Dic = CreateObject("Scripting.Dictionary")
  For lR = 1 To UBound(sArray, 1)
    If Len(sArray(lR, 1)) = 4 Then
      Tmp = sArray(lR, 1) & " - " & sArray(lR, 2)
      If Not Dic.Exists(Tmp) Then
        Dic.Add Tmp, ""
        n = n + 1
        ReDim Preserve Arr(1 To n)
        Arr(n) = Tmp
      End If
    End If
  Next
  Sheet1.ComboBox1.List() = Sort1DArray(Arr, True)
End Sub
 

File đính kèm

  • SortArray.xls
    52 KB · Đọc: 174
Upvote 0
Giúp em học VBA với

Hi em không phải dan chuyên tin nhưng phải làm việc với exel nhiều, nhiều lúc gặp phải vấn đề khó muốn viết một chương trình đơn giản để giải quyết nhưng không viết được mong các bác chỉ giáo cho em vai đường cơ bản với, em cung đang đọc VBA rồi nhưng hơi khó hiểu chút, bác nào giỏ về khoản này chỉ cho em cách học thế nào cho dễ hiểu thi nhanh quá. Thank trước nha!--=0
 
Upvote 0
Giả sử tôi có mãng Arr = Array("a", "b", "c", "d")Vậy có hàm VBA để tìm kiếm (giá trị "c" chẳng hạn) trong mãng cho kết quả là 2 không?
Có thể áp dụng như Set Rng=sRng.Find("a",,,xlWhole) được không?
Xin các anh chị giúp đỡ (không dùng vòng lập). Xin cảm ơn các anh chị
 
Lần chỉnh sửa cuối:
Upvote 0
Giả sử tôi có mãng Arr = Array("a", "b", "c", "d")Vậy có hàm VBA để tìm kiếm (giá trị "c" chẳng hạn) trong mãng cho kết quả là 2 không?
Có thể áp dụng như Set Rng=sRng.Find("a",,,xlWhole) được không?
Xin các anh chị giúp đỡ (không dùng vòng lập). Xin cảm ơn các anh chị
Nhanh nhất là dùng WorksheetFunction.Match("c", Arr, 0)
 
Upvote 0
Làm sao để giữ nguyên định dạng của dữ liệu số khi chuyển từ bảng sang mảng

Mong các Bác hướng dẫn làm cách nào để có thể giữ nguyên định dạng của dữ liệu dạng số, với ListBox có nguồn từ một mảng.

Yêu cầu cụ thể như trong file đính kèm.

Trân trọng
 

File đính kèm

  • FileVidu.xls
    32 KB · Đọc: 80
Upvote 0
Mong các Bác hướng dẫn làm cách nào để có thể giữ nguyên định dạng của dữ liệu dạng số, với ListBox có nguồn từ một mảng.

Yêu cầu cụ thể như trong file đính kèm.

Trân trọng
Cell C2 ta nhìn thấy là 0.67 nhưng giá trị thật của nó là 0.6666666....6666 (vì =2/3)
Với mảng được lấy từ những dữ liệu này, đương nhiên các phần tử của mảng phải là những giá trị thật chứ không phải cái mà ta nhìn thấy ---> Vấn đề của chúng ta là phải xử lý mảng này trước khi nạp vào ListBox
Ví dụ thế này:
PHP:
Private Sub UserForm_Initialize()
  Dim Arr, Clls As Range, i As Long
  With Sheet1.Range("C2:C5")
    Arr = .Value
    For Each Clls In .Cells
      i = i + 1
      Arr(i, 1) = Clls.Text
    Next
  End With
  Me.ListBox1.List() = Arr
End Sub
Ngoài ra cũng có chiêu khác:
PHP:
Private Sub UserForm_Initialize()
  Dim Arr
  With Sheet1.Range("C2:C5")
    Arr = Evaluate("TRANSPOSE(TEXT(" & .Address & ", ""0.00""))")
    Arr = WorksheetFunction.Transpose(Arr)
    Me.ListBox1.List() = Arr
  End With
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Mong các Bác hướng dẫn làm cách nào để có thể giữ nguyên định dạng của dữ liệu dạng số, với ListBox có nguồn từ một mảng.

Yêu cầu cụ thể như trong file đính kèm.

Trân trọng
Mình nghĩ phải trải qua 1 bước nữa tại vì source nguồn của nó là như thế nên nó luôn gán vào đúng source nguồn của nó nên phải thế thôi
PHP:
Private Sub UserForm_Initialize()
Dim arrSource, arr(), lRow As Long
arrSource = Sheet1.Range("C2:C5").Value
ReDim arr(1 To UBound(arrSource, 1), 1 To 1)
For lRow = 1 To UBound(arrSource, 1)
arr(lRow, 1) = Format(arrSource(lRow, 1), "0.00")
Next lRow
Sheet1.Range("C2:C5").Name = "Dulieu"
Me.ListBox1.List() = arr
Me.ListBox2.RowSource = "Dulieu"
End Sub
 
Upvote 0
Cám ơn Bác NDU và bạn nmhung49.
Mã:
[LEFT][COLOR=#007700][FONT=monospace]Private [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Sub UserForm_Initialize[/FONT][/COLOR][COLOR=#007700][FONT=monospace]()
  [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Dim Arr
  With Sheet1[/FONT][/COLOR][COLOR=#007700][FONT=monospace].[/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Range[/FONT][/COLOR][COLOR=#007700][FONT=monospace]([/FONT][/COLOR][COLOR=#DD0000][FONT=monospace]"C2:C5"[/FONT][/COLOR][COLOR=#007700][FONT=monospace])
    [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Arr [/FONT][/COLOR][COLOR=#007700][FONT=monospace]= [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Evaluate[/FONT][/COLOR][COLOR=#007700][FONT=monospace]([/FONT][/COLOR][COLOR=#DD0000][FONT=monospace]"TRANSPOSE(TEXT(" [/FONT][/COLOR][COLOR=#007700][FONT=monospace]& .[/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Address [/FONT][/COLOR][COLOR=#007700][FONT=monospace]& [/FONT][/COLOR][COLOR=#DD0000][FONT=monospace]", ""0.00""))"[/FONT][/COLOR][COLOR=#007700][FONT=monospace])
    [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Arr [/FONT][/COLOR][COLOR=#007700][FONT=monospace]= [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]WorksheetFunction[/FONT][/COLOR][COLOR=#007700][FONT=monospace].[/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Transpose[/FONT][/COLOR][COLOR=#007700][FONT=monospace]([/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Arr[/FONT][/COLOR][COLOR=#007700][FONT=monospace])
    [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Me[/FONT][/COLOR][COLOR=#007700][FONT=monospace].[/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]ListBox1[/FONT][/COLOR][COLOR=#007700][FONT=monospace].List() = [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Arr
  End With
End Sub[/FONT][/COLOR][/LEFT]
Theo tôi cách của Bác NDU hay hơn, vì không dùng vòng For...Next -> thời gian xử lý nhanh hơn.

Nhờ thầy NDU giải thích thêm đoạn code này có phải là xử trên mảng không?
 
Lần chỉnh sửa cuối:
Upvote 0
Cám ơn Bác NDU và bạn nmhung49.
Mã:
[LEFT][COLOR=#007700][FONT=monospace]Private [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Sub UserForm_Initialize[/FONT][/COLOR][COLOR=#007700][FONT=monospace]()
  [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Dim Arr
  With Sheet1[/FONT][/COLOR][COLOR=#007700][FONT=monospace].[/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Range[/FONT][/COLOR][COLOR=#007700][FONT=monospace]([/FONT][/COLOR][COLOR=#DD0000][FONT=monospace]"C2:C5"[/FONT][/COLOR][COLOR=#007700][FONT=monospace])
    [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Arr [/FONT][/COLOR][COLOR=#007700][FONT=monospace]= [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Evaluate[/FONT][/COLOR][COLOR=#007700][FONT=monospace]([/FONT][/COLOR][COLOR=#DD0000][FONT=monospace]"TRANSPOSE(TEXT(" [/FONT][/COLOR][COLOR=#007700][FONT=monospace]& .[/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Address [/FONT][/COLOR][COLOR=#007700][FONT=monospace]& [/FONT][/COLOR][COLOR=#DD0000][FONT=monospace]", ""0.00""))"[/FONT][/COLOR][COLOR=#007700][FONT=monospace])
    [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Arr [/FONT][/COLOR][COLOR=#007700][FONT=monospace]= [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]WorksheetFunction[/FONT][/COLOR][COLOR=#007700][FONT=monospace].[/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Transpose[/FONT][/COLOR][COLOR=#007700][FONT=monospace]([/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Arr[/FONT][/COLOR][COLOR=#007700][FONT=monospace])
    [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Me[/FONT][/COLOR][COLOR=#007700][FONT=monospace].[/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]ListBox1[/FONT][/COLOR][COLOR=#007700][FONT=monospace].List() = [/FONT][/COLOR][COLOR=#0000BB][FONT=monospace]Arr
  End With
End Sub[/FONT][/COLOR][/LEFT]
Theo tôi cách của Bác NDU hay hơn, vì không dùng vòng For...Next -> thời gian xử lý nhanh hơn.

Nhờ thầy NDU giải thích thêm đoạn code này có phải là xử trên mảng không?
Xét về tốc độ thì không chắc sẽ nhanh hơn so với vòng lập đâu
Mảng này tương đương với công thức mảng trên Excel thôi =TEXT(C2:C5, "0.00")
 
Upvote 0
PHP:
  Dim sArray, Arr()
Cho em hỏi cách DIM như trên thì sArray là biến gì & Arr()??
tại sao sau Arr có () mà sArray không có?

Cám ơn
 
Upvote 0
Web KT
Back
Top Bottom