Nhờ giúp code function tìm dòng cuối

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

iloveit

Thành viên thường trực
Tham gia
2/3/13
Bài viết
212
Được thích
52
Giới tính
Nam
Nghề nghiệp
Tự do
Thân chào các anh chị, các bạn trên GPE

Tôi có tìm và làm theo trên mạng một file Excel nhưng do tài liệu bị thiếu phần viết function nên tôi đang vướng mắc phần code khi ghi dữ liệu từ Sheet PNK sang Sheet GHISO

Mã:
Sub PNK_vao_so()
    Dim lr As Long
    Dim lr_pnk As Long
    lr = tim_dong_cuoi(GHISO, "A") + 1
    lr_pnk = tim_dong_cuoi(PNK, "B")
    GHISO.Range("A" & lr & ":E" & lr) = _
    Application.Transpose(PNK.Range("C4:C8"))
  
    GHISO.Range("G" & lr & ":N" & lr + lr_pnk - 12).Value = _
    PNK.Range("A12:H" & lr_pnk).Value
    
    GHISO.Range("F" & lr) = "NK"
    GHISO.Range("A" & lr & ":F" & lr + lr_pnk - 12).FillDown
    
End Sub

Nhưng tôi chưa biết phải viết phần function tim_dong_cuoi như thế nào vì vậy khi chạy code thì báo lỗi như file đính kèm. Nhờ anh chị và các bạn giúp tôi viết phần function để tôi có thể thực hành tiếp.

Chân thành cảm ơn!
 

File đính kèm

lr=ghiso.range("A" & rows.count).end(xlup).row+1

Hình như trong file này còn thiếu function tìm dòng cuối nên nên khi viết 2 dòng dưới đây sẽ bị lỗi

Mã:
lr = tim_dong_cuoi(GHISO, "A") + 1
lr_pnk = tim_dong_cuoi(PNK, "B")

Ý em muốn hỏi là phải viết thêm function tim_dong_cuoi như thế nào để có thể viết tiếp như trên
 
Upvote 0
Hàm đó là vậy, chắc vậy:
PHP:
Function Tim_Dong_Cuoi(ShName As String, Col As String) As Long
    Tim_Dong_Cuoi = ThisWorkbook.Worksheets(ShName).Cells(Rows.Count, Col).End(xlUp).Row + 1
End Function
Cú pháp gọi hàm lúc đó sẽ là"
Mã:
    lr = Tim_Dong_Cuoi("GHISO", "A")
 
   lr_pnk = Tim_Dong_Cuoi("PNK", "B")
 
Upvote 0
function tim_dong_cuoi như thế nào để có thể viết tiếp như trên
Tạm..
PHP:
Function lastRow(ByVal ws As Worksheet, ByVal sCol As String) As Long
    ShowAllRows ws
    lastRow = ws.Cells(ws.Rows.Count, sCol).End(xlUp).Row
End Function

Sub ShowAllRows(ByVal ws As Worksheet)
    If ws.FilterMode = True Then ws.ShowAllData
    ws.Cells.EntireRow.Hidden = False
End Sub
Mã:
lr = lastRow(GHISO, "A") + 1
lr_pnk = lastRow(PNK, "B")
 
Upvote 0
Web KT

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

Back
Top Bottom