Sử dụng mảng nhiều cấp trong VBA

  • Thread starter Thread starter TOPXP
  • Ngày gửi Ngày gửi
Liên hệ QC

TOPXP

Thành viên mới
Tham gia
6/9/08
Bài viết
3
Được thích
0
Chào mọi người.

Mình là gà mới học VB nên còn nhiều điều chưa biết, mong mọi người giúp đỡ.
Trước hết nhờ mọi người giúp mình vụ Array nhiều chiều này ^_^
Mình có 3 array là SheetName(1),SheetName(2),SheetName(3)

PHP:
Dim i, j, FileName, SheetName(0 To 10)

    SheetName(1) = Array("_Cell1(all)", "_Cell1(BH)", "_Cell1(CS)", "_Cell1(PS)", "_Pro1(all)")
    SheetName(2) = Array("_Cell2(all)", "_Cell2(BH)", "_Cell2(CS)", "_Cell2(PS)", "_Pro2(all)")
    SheetName(3) = Array("_Cell3(all)", "_Cell3(BH)", "_Cell3(CS)", "_Cell3(PS)", "_Pro3(all)")

Vậy mình muốn lấylieeuieeuj ví dụ "_Cell1(BH)" thì làm thế nào. Mình dùng cú pháp SheetName(1,1) thì VBA báo lỗi.

Mong phản hồi sớm.
 
Array 2 cấp nên phải truy xuất 2 cấp:
PHP:
SheetName(1) (1)
 
Upvote 0
Array 2 cấp nên phải truy xuất 2 cấp:
PHP:
SheetName(1) (1)

Sao không được bạn ơi :(

Khà khà được rồi. Thank bạn.

DO mình dùng hàm for đến j=5 SheetName(1)(j=5) không có giá trị nên báo lỗi.
Thanks
Tiện thể cho mình hỏi mình muốn khai báo mảng 2 chiều SheetName(4,10).
Mình muốn điền giá trị vào sheetName có cách nào viết nhanh như sử dụng array không. Chứ đánh theo kiểu SheetName(1,1) = "ten" thì lâu quá.
Ví dụ tựa tựa vậy.
SheetName = (("1","2"),("4","6"),("Ten","Tuoi"))
 
Chỉnh sửa lần cuối bởi điều hành viên:
Upvote 0
PHP:
Sub abc()
Dim sheetname(1 To 3)
    sheetname(1) = Array("_Cell1(all)", "_Cell1(BH)", "_Cell1(CS)", "_Cell1(PS)", "_Pro1(all)")
    sheetname(2) = Array("_Cell2(all)", "_Cell2(BH)", "_Cell2(CS)", "_Cell2(PS)", "_Pro2(all)")
    sheetname(3) = Array("_Cell3(all)", "_Cell3(BH)", "_Cell3(CS)", "_Cell3(PS)", "_Pro3(all)")
    For i = 1 To 3
        For j = 0 To 4
            Cells(i, j + 1) = sheetname(i)(j)
        Next 
    Next
End Sub
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom