Cần trợ giúp về bài tập Excel :D (1 người xem)

  • Thread starter Thread starter S.Duc
  • Ngày gửi Ngày gửi

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

S.Duc

Thành viên mới
Tham gia
10/3/15
Bài viết
18
Được thích
0
Chào các bạn,
Mình kính nhờ các bạn giúp về bài tập Excel sau: lập 1 hàm mà nó sẽ hiển thị các dãy số 1,2,3,.... tùy thuộc vào các dấu "x" đánh ở ô bên cạnh :D. Theo như file đính kèm.

Mình xin cảm ơn trước :D!
 

File đính kèm

Bạn giải thích chứ nhìn vào file bạn tôi chẳng hiểu gì cả.
 
Bạn giải thích chứ nhìn vào file bạn tôi chẳng hiểu gì cả.
Ah vâng, mình cần lập 1 hàm tại các vị trí O3, O4, O5, ... tương ứng với những dấu x được đánh ở các hàng bên trái 3, 4, 5, ... của dãy số từ 1-13.
Ví dụ như hàng 3, mình dấu x ở các vị trí 1,2,3,4,5,9,13 thì hàng O3 phải hiển thị là 1,2,3,4,5,9,13
 
Ah vâng, mình cần lập 1 hàm tại các vị trí O3, O4, O5, ... tương ứng với những dấu x được đánh ở các hàng bên trái 3, 4, 5, ... của dãy số từ 1-13.
Ví dụ như hàng 3, mình dấu x ở các vị trí 1,2,3,4,5,9,13 thì hàng O3 phải hiển thị là 1,2,3,4,5,9,13

Thử với File này xem sao
 

File đính kèm

À, được rồi, mà enable macro mới ra bạn nhỉ, có thể chỉ mình cách làm được ko? :D

File đó bên trong chưa Macro nên khi mở file phải enable macro thì mới chạy kết quả được. Còn cách làm thì bạn xem

đoạn Macro đó trong Module tại cửa sổ VBA (bằng cách nhấn ALT+F11).
 
File đó bên trong chưa Macro nên khi mở file phải enable macro thì mới chạy kết quả được. Còn cách làm thì bạn xem

đoạn Macro đó trong Module tại cửa sổ VBA (bằng cách nhấn ALT+F11).
Nếu cái phần thống kê O3,O4 ... nằm ở sheet khác thì sao bạn nhỉ?
 

File đính kèm

Cảm ơn bạn, phiền bạn xem giúp file tương tự này nữa, lần này có tới 3 bảng :(

Bạn sửa lại đoạn Macro bên trong thành thế này nhé:
Mã:
Option Explicit
Function show(vung As Range) As String
Dim mang(), i As Long, k As Long
For i = 1 To vung.Columns.Count
  If vung.Cells(1, i) = "x" Then
    k = k + 1
    ReDim Preserve mang(1 To k)
    mang(k) = i
  End If
Next i
show = Join(mang, ",")
End Function
 
Lần chỉnh sửa cuối:
Số thứ tự ở 2 bảng sau có thay đổi bạn ơi, 1-16, 1-17

Sorry, ban đổi thành đoạn Code này :
Mã:
Option Explicit
Function show(vung As Range) As String
Dim mang(), i As Long, k As Long
For i = 1 To vung.Columns.Count
  If vung.Cells(1, i) = "x" Then
    k = k + 1
    ReDim Preserve mang(1 To k)
    mang(k) = i
  End If
Next i
show = Join(mang, ",")
End Function
 
OK, được rồi, cảm ơn bạn nhiều /-*+/
 

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

Back
Top Bottom