[Hỗ trợ] Gửi email cảnh báo công việc quá hạn và sắp hết hạn

Trạng thái
Không mở trả lời sau này.

quyenpv

Yêu THVBA
Em có tìm được đoạn code gửi tính lương. Tuy nhiên khi sửa điều kiện gửi ngày phải hoàn thành so với ngày hiện tại không chạy, mong các anh chỉ giúp
Em có Sheet Data và Sheet Noidung như trong file đính kèm
Mục đích cảnh báo tiến độ công việc chậm và sắp hết hạn cần phải hoàn thành. Code sẽ lấy thời gian hoàn thành tại cột G trong Sheet Data so sánh với ngày hiện tại đưa vào Body email như trong Sheet Noidung và đính kèm file att
Mong các anh chỉ giúp ạ
Mã:
Sub GuiMail()
    Dim OutApp As Object, OutMail As Object
    Dim Ash As Worksheet, Cws As Worksheet
    Dim Rcount As Long, Rnum As Long
    Dim FilterRange As Range, FieldNum As Integer, mailAddress As String
    On Error GoTo cleanup
    Set OutApp = CreateObject("Outlook.Application")
    With Application
        .EnableEvents = False
        .ScreenUpdating = False
    End With
    Set Ash = ActiveSheet
    Ash.Cells.EntireColumn.AutoFit
    Set FilterRange = Ash.Range("A2:O" & Ash.Rows.Count)
    FieldNum = 7    'Thoi gian hoan thanh
   
    Set Cws = Worksheets.Add
    FilterRange.Columns(FieldNum).AdvancedFilter _
            Action:=xlFilterCopy, _
            CopyToRange:=Cws.Range("G2"), _
            CriteriaRange:="", Unique:=True
    Rcount = Application.WorksheetFunction.CountA(Cws.Columns(1))
    If Rcount >= 2 Then
        For Rnum = 2 To Rcount
            FilterRange.AutoFilter Field:=FieldNum, Criteria1:=Cws.Cells(Rnum, 1).Value
            mailAddress = ""
            On Error Resume Next
            mailAddress = Application.WorksheetFunction. _
                          VLookup(Cws.Cells(Rnum, 1).Value, _
                                Worksheets("Mailinfo").Range("A1:C" & _
                                Worksheets("Mailinfo").Rows.Count), 3, False)
            On Error GoTo 0
            If mailAddress <> "" Then
                With Ash.AutoFilter.Range
                    On Error Resume Next
                    Set rng = .SpecialCells(xlCellTypeVisible)
                    On Error GoTo 0
                End With
                Set OutMail = OutApp.CreateItem(0)
                On Error Resume Next
                With OutMail
                    .BodyFormat = olFormatHTML
                    .To = mailAddress
                    .Subject = "Chi tiet bang luong: " & Ash.Range("B" & Rnum) _
                                & " (Voi he so chuc danh la " & Ash.Range("C" & Rnum) & ")"
                    .HTMLBody = "<B>Dear " & Ash.Range("B" & Rnum) & ",</B><BR>" & _
                           "Xin vui long xem chi tiet bang luong nhu ben duoi:<BR><BR>" & _
                                "<table border=1><tr>" & _
                                "<th>H" & ChrW(7885) & " tên</th>" & _
                                "<th>H" & ChrW(7879) & " s" & ChrW(7889) & " ch" & ChrW(7913) & "c danh</th>" & _
                                "<th>S" & ChrW(7889) & " ngày công</th>" & _
                                "<th>L" & ChrW(432) & ChrW(417) & "ng CD</th>" & _
                                "<th>Ph" & ChrW(7909) & " c" & ChrW(7845) & "p " & ChrW(273) & "i" & ChrW(7879) & "n thoai</th>" & _
                                "<th>Ph" & ChrW(7909) & " c" & ChrW(7845) & "p " & ChrW(273) & "oàn th" & ChrW(7875) & "</th>" & _
                                "<th>Tr" & ChrW(7915) & " BHXH,BHTY</th>" & _
                                "<th>L" & ChrW(432) & ChrW(417) & "ng CK</th></tr><tr>" & _
                                "<td>" & Ash.Range("B" & Rnum) & "</td>" & _
                                "<td>" & Ash.Range("C" & Rnum) & "</td>" & _
                                "<td>" & Ash.Range("D" & Rnum) & "</td>" & _
                                "<td>" & Ash.Range("E" & Rnum) & "</td>" & _
                                "<td>" & Ash.Range("F" & Rnum) & "</td>" & _
                                "<td>" & Ash.Range("G" & Rnum) & "</td>" & _
                                "<td>" & Ash.Range("H" & Rnum) & "</td>" & _
                                "<td>" & Ash.Range("I" & Rnum) & "</td></tr>" & _
                                "</table>" & _
                                "<BR>" & _
                            "Neu thay co gi thac mac xin vui long phan hoi som.<BR>" & _
                              "<B>Xin Cam on,</B>" & _
                            "<BR>" & _
                            "<B>HLMT<B>"
                    .Display  'Or use Send
                End With
                On Error GoTo 0
                Set OutMail = Nothing
            End If
            Ash.AutoFilterMode = False
        Next Rnum
    End If
MsgBox "Da tao xong email gui", vbInformation
ThisWorkbook.Close (False)
cleanup:
    Set OutApp = Nothing: Set OutMail = Nothing
    Application.DisplayAlerts = False
    Cws.Delete
    Application.DisplayAlerts = True

    With Application
        .EnableEvents = True
        .ScreenUpdating = True
    End With

End Sub
Và Code em liệt kê các công việc quá hạn và hết hạn

Mã:
Sub Run_BB_HetHan_SapHet()

    Dim i, k, kk, ar, Arr_SapHetHan, Arr_HetHan
    Dim Nguon, Dong
    Dim LastRow_HH, LastRow_SHH
   
    With Sheets("Data")
        Dong = .Range("B3").End(xlDown).Row
        Nguon = .Range("A3", "O" & Dong)                          'Cot cuoi cung tai Sheet Input_TB
        Dong = UBound(Nguon)
    End With

    ReDim Arr_SapHetHan(1 To Dong, 1 To 12)
    ReDim Arr_HetHan(1 To Dong, 1 To 12)
    'Chay kiem tra dau viec sap het han
    For i = 1 To Dong
      If Nguon(i, 7) >= Date And Nguon(i, 7) - Date < Sheet5.Range("NgayNhac").Value And Nguon(i, 12) <> "Finish" Then  'Ktra lay nhung vat tu DVSD
            k = k + 1
            Arr_SapHetHan(k, 1) = k
            Arr_SapHetHan(k, 2) = Nguon(i, 2)
            Arr_SapHetHan(k, 3) = Nguon(i, 3)
            Arr_SapHetHan(k, 4) = Nguon(i, 4)          'Ten VTTB
            Arr_SapHetHan(k, 5) = Nguon(i, 5)          'Ma VT
            Arr_SapHetHan(k, 6) = Nguon(i, 6)          'So luong nghiem thu
            Arr_SapHetHan(k, 7) = Nguon(i, 7)
            Arr_SapHetHan(k, 8) = Nguon(i, 7) - Date
            'Don gia
            Arr_SapHetHan(k, 9) = Nguon(i, 8)          'Don gia
            Arr_SapHetHan(k, 10) = Nguon(i, 9)          'Don gia
            Arr_SapHetHan(k, 11) = Nguon(i, 10)          'Don gia
           
      End If
    Next i
    'Chay kiem tra dau viec het han
    For i = 1 To Dong
   
      If Nguon(i, 4) <> "" And Nguon(i, 7) < Date And Nguon(i, 7) - Date < 0 And Nguon(i, 12) = "" Then 'Ktra lay nhung vat tu DVSD
            kk = kk + 1
            Arr_HetHan(kk, 1) = kk
            Arr_HetHan(kk, 2) = Nguon(i, 2)
            Arr_HetHan(kk, 3) = Nguon(i, 3)
            Arr_HetHan(kk, 4) = Nguon(i, 4)          'Ten VTTB
            Arr_HetHan(kk, 5) = Nguon(i, 5)          'Ma VT
            Arr_HetHan(kk, 6) = Nguon(i, 6)          'So luong nghiem thu
            Arr_HetHan(kk, 7) = Nguon(i, 7)
            Arr_HetHan(kk, 8) = Nguon(i, 7) - Date
            'Don gia
            Arr_HetHan(kk, 9) = Nguon(i, 8)          'Don gia
            Arr_HetHan(kk, 10) = Nguon(i, 9)          'Don gia
            Arr_HetHan(kk, 11) = Nguon(i, 10)          'Don gia
           
      End If
    Next i
   
    Sheets("Baocao").Select
    With Sheets("Baocao")

        .Range("A6").Resize(kk, 12).Value = Arr_HetHan
       
        LastRow_SHH = Sheets("Baocao").Cells(Rows.Count, "D").End(xlUp).Row
        .Range("B" & LastRow_SHH + 1).Formula = "CONG VIEC SAP HET HAN"
        If k Then
            .Range("A" & LastRow_SHH + 2).Resize(k, 12).Value = Arr_SapHetHan
        End If


'      .Range("C3:F" & 12 + k - 1).WrapText = 1
'      .Range("C3:F" & 12 + k - 1).HorizontalAlignment = xlJustify
'      .Range("A12:M" & 12 + k - 1).Font.Bold = False
      .Range("A4").Resize(kk, 12).Borders.LineStyle = 1
'      .Range("H12:J" & 12 + k + 1).NumberFormat = "#,##0.00"
'      .Range("J" & 12 + k + 1).Formula = "=SUBTOTAL(9,J12:J" & 12 + k & ")"
      'Can chinh
'      .Rows("12:" & LastRow - 1 & "").RowHeight = 35
'      .Rows("" & LastRow & ":" & LastRow + 4 & "").RowHeight = 23
      .PageSetup.PrintArea = "$A$1:$L" & LastRow_SHH + 4 & ""
     
    End With
End Sub
Link down file (do diễn đàn không cho Att) :
 

tuhocvba

Administrator
Thành viên BQT
Bạn có thể bớt chút thời gian để trình bày lại cho dễ hiểu không ạ?
  • Nếu bạn không biết cách upload ảnh lên diễn đàn, bạn vui lòng tham khảo topic sau: .
  • Bạn lưu ý phải sử dụng thẻ Code khi viết code trên forum. Xin xem mục 4 trong .
  • Bạn nên nói rõ Input là gì? Output muốn ra sao?
  • Bạn nên có file demo. Bạn có thể upload file lên google drive hoặc mediafire.com rồi dẫn link về diễn đàn.

Một bài viết trình bày dễ hiểu là một bài viết sử dụng hình minh họa trực quan. Một bài viết chỉ toàn chữ sẽ khiến người khác không muốn đọc.
 

PTHhn

Yêu THVBA như điếu đổ
@quyenpv : File của bạn không để chế độ public cho nên tôi không download về được. Bạn có thể chia sẻ file ở chế độ public không?
Ngoài ra nếu bài viết diễn giải bằng hình ảnh thì dễ hiểu hơn, ít người kiên nhẫn đọc code để hiểu yêu cầu.
 

BKKBG

Yêu THVBA nhất
Bạn chủ topic đang đăng trên một diễn đàn khác, vì vậy mọi người cân nhắc hỗ trợ. Có thể khi chúng ta đang hỗ trợ ở đây thì ở nơi khác cũng đang hỗ trợ bạn ấy, thì công sức chúng ta làm sẽ là lãng phí.
Trường hợp bạn chủ topic vẫn muốn nhận hỗ trợ trên diễn đàn này, tôi nghĩ bạn nên thông báo trên diễn đàn mà bạn đã đăng là "dừng hỗ trợ". Vì khi chúng tôi hỗ trợ bạn mà ở nơi khác người ta cũng làm thì công sức của người ta cũng trở thành lãng phí.

1. File của bạn là file này đúng không?

2. Hãy cho tôi xác nhận lại việc nào bạn làm được, việc nào cần hỗ trợ.
Bạn cần đăng nhập để thấy hình ảnh
 

quyenpv

Yêu THVBA
Bạn chủ topic đang đăng trên một diễn đàn khác, vì vậy mọi người cân nhắc hỗ trợ. Có thể khi chúng ta đang hỗ trợ ở đây thì ở nơi khác cũng đang hỗ trợ bạn ấy, thì công sức chúng ta làm sẽ là lãng phí.
Trường hợp bạn chủ topic vẫn muốn nhận hỗ trợ trên diễn đàn này, tôi nghĩ bạn nên thông báo trên diễn đàn mà bạn đã đăng là "dừng hỗ trợ". Vì khi chúng tôi hỗ trợ bạn mà ở nơi khác người ta cũng làm thì công sức của người ta cũng trở thành lãng phí.

1. File của bạn là file này đúng không?

2. Hãy cho tôi xác nhận lại việc nào bạn làm được, việc nào cần hỗ trợ.
Đúng rồi anh chị!
Diễn đàn này mình mới biết và bắt đầu tham gia. Việc tham gia và xin hỗ trợ đối với công việc khi không xử lý được là điều cần thiết, còn diễn đàn khác mình có tham gia trước đó khi thời gian không được sự trả lời coi như là không được hỗ trợ trong khi cái mình vẫn đang rất cần
Mong các anh chị hỗ trợ giúp. Em cám ơn
 

quyenpv

Yêu THVBA
2. Hãy cho tôi xác nhận lại việc nào bạn làm được, việc nào cần hỗ trợ.
Bạn cần đăng nhập để thấy hình ảnh
Sheet Noidung chỉ là Sheet tạm có thể lấy luôn từ Sheet Data cũng được ạ
Mong muốn trong body email sẽ hiện bảng dữ liệu như Sheet nội dung và đính kèm file đó ạ
 

BKKBG

Yêu THVBA nhất
Nếu bạn đã xử lý được bước 1 là ghi thông tin cần thiết ra sheet nội dung, vậy nội dung bạn cần hỗ trợ là gửi mail.
Nội dung mail bạn mong muốn là :
-Nội dung mail là sheet NoiDung
-Đính kèm file đó là file chứa sheet nội dung hay là toàn bộ file input mà bạn đang nói tới.

Ngoài ra để gửi mail, tôi cần địa chỉ mail của người nhận. Vậy phiền bạn khi ghi nội dung ra sheet NoiDung thì ghi địa chỉ mail của người cần nhận vào cellsA1 của sheet NoiDung được không?
 

quyenpv

Yêu THVBA
Trong Sheet Data có cột F là người phụ trách thực hiện công việc đó sau khi lọc được nội dung cần gửi email sẽ lấy thông tin từ Sheet Mailinfo để gửi địa chỉ người nhận
 

BKKBG

Yêu THVBA nhất
Trong Sheet Data có cột F là người phụ trách thực hiện công việc đó sau khi lọc được nội dung cần gửi email sẽ lấy thông tin từ Sheet Mailinfo để gửi địa chỉ người nhận
Tôi đang nhận thức sheet NoiDung là Input của macro.
Macro cần gửi mail có nội dung đó cho người X. Nhưng người X đó là thông tin macro không biết?

Vậy làm thế nào để biết nội dung ghi ở sheet NOIDUNG là ứng với người nào? Logic là gì?

Nếu bạn muốn hỗ trợ từ khâu gửi mail thì đó là điểm bất minh dẫn tới không hỗ trợ được.
Nếu bạn muốn hỗ trợ từ bước xuất ra danh sách các công việc hết hạn và sắp hết hạn theo từng cá nhân rồi gửi mail cho các cá nhân đó thì quay về bước 1, hãy diễn giải cho chúng tôi biết, khái niệm như thế nào là hết hạn, sắp hết hạn?

Bạn cần xuất các trường thông tin nào (cột thông tin nào, ví dụ cột A, cột C,...) để làm thành nội dung mail gửi đi.
 
T

thanhphong

Guest
@quyenpv : Ít nhất khi memo ra được sheet NoiDung thì bạn cũng nên ghi tên người ở cột F sheet Data vào cells A1 của sheet NoiDung để thuận tiện cho người code sau này.

Bây giờ nhìn vào sheet NoiDung, không biết đó là cá nhân nào, thì code sẽ đi vòng một chút.
Đó là lấy ra một công việc bất kỳ, quay về sheet Data tìm xem công việc đó ở dòng nào, rồi lấy tên người ở cột F. (Việc này sẽ không cần nếu trong quá trình tạo dữ liệu sheet NoiDung thì bạn ghi luôn tên cá nhân cột F đó vào cells A1 sheet NoiDung ,ví dụ ghi vào là cuongph2).

Lấy được tên người thì quay về sheet MailInfo để tìm địa chỉ mail người nhận.

Vậy, nếu bạn nhất quyết không ghi tên người (cuongph2 ) vào cells A1 sheet NoiDung thì hãy trả lời:
Tên công việc trên sheet Data có là duy nhất không? Nếu tên công việc không duy nhất thì code là không khả thi.
Bạn cần đăng nhập để thấy hình ảnh
 

quyenpv

Yêu THVBA
Tôi đang nhận thức sheet NoiDung là Input của macro.
Macro cần gửi mail có nội dung đó cho người X. Nhưng người X đó là thông tin macro không biết?

Vậy làm thế nào để biết nội dung ghi ở sheet NOIDUNG là ứng với người nào? Logic là gì?

Nếu bạn muốn hỗ trợ từ khâu gửi mail thì đó là điểm bất minh dẫn tới không hỗ trợ được.
Nếu bạn muốn hỗ trợ từ bước xuất ra danh sách các công việc hết hạn và sắp hết hạn theo từng cá nhân rồi gửi mail cho các cá nhân đó thì quay về bước 1, hãy diễn giải cho chúng tôi biết, khái niệm như thế nào là hết hạn, sắp hết hạn?

Bạn cần xuất các trường thông tin nào (cột thông tin nào, ví dụ cột A, cột C,...) để làm thành nội dung mail gửi đi.
Dạ anh. Anh lấy toàn bộ thông tin từ Sheet Data ạ
Còn nội dung gửi email từng người như Sheet Noidung
 

quyenpv

Yêu THVBA
@quyenpv : Ít nhất khi memo ra được sheet NoiDung thì bạn cũng nên ghi tên người ở cột F sheet Data vào cells A1 của sheet NoiDung để thuận tiện cho người code sau này.

Bây giờ nhìn vào sheet NoiDung, không biết đó là cá nhân nào, thì code sẽ đi vòng một chút.
Đó là lấy ra một công việc bất kỳ, quay về sheet Data tìm xem công việc đó ở dòng nào, rồi lấy tên người ở cột F. (Việc này sẽ không cần nếu trong quá trình tạo dữ liệu sheet NoiDung thì bạn ghi luôn tên cá nhân cột F đó vào cells A1 sheet NoiDung ,ví dụ ghi vào là cuongph2).

Lấy được tên người thì quay về sheet MailInfo để tìm địa chỉ mail người nhận.

Vậy, nếu bạn nhất quyết không ghi tên người (cuongph2 ) vào cells A1 sheet NoiDung thì hãy trả lời:
Tên công việc trên sheet Data có là duy nhất không? Nếu tên công việc không duy nhất thì code là không khả thi.
Bạn cần đăng nhập để thấy hình ảnh
Tên công việc không là duy nhất anh, nó sẽ thay đổi do người giao việc
Em mường tường sẽ lọc theo thời gian tại cột G theo 2 điều kiện hết hạn và sắp hết hạn
Lọc theo tên người gửi ạ
 
T

thanhphong

Guest
@quyenpv : Hãy chỉ cho tôi biết logic làm thế nào để biết danh sách này thuộc về ai?
Bạn cần đăng nhập để thấy hình ảnh


Hãy cố gắng sử dụng hình ảnh khi nói chuyện với chúng tôi, giống như cách chúng tôi đang nói chuyện với bạn.
 

quyenpv

Yêu THVBA
Trong code này em có liệt kê từ Sheet Data ra anh
Mã:
Sub Run_BB_HetHan_SapHet()

    Dim i, k, kk, ar, Arr_SapHetHan, Arr_HetHan
    Dim Nguon, Dong
    Dim LastRow_HH, LastRow_SHH
  
    With Sheets("Data")
        Dong = .Range("B3").End(xlDown).Row
        Nguon = .Range("A3", "O" & Dong)                          'Cot cuoi cung tai Sheet Input_TB
        Dong = UBound(Nguon)
    End With

    ReDim Arr_SapHetHan(1 To Dong, 1 To 12)
    ReDim Arr_HetHan(1 To Dong, 1 To 12)
    'Chay kiem tra dau viec sap het han
    For i = 1 To Dong
      If Nguon(i, 7) >= Date And Nguon(i, 7) - Date < Sheet5.Range("NgayNhac").Value And Nguon(i, 12) <> "Finish" Then  'Ktra lay nhung vat tu DVSD
            k = k + 1
            Arr_SapHetHan(k, 1) = k
            Arr_SapHetHan(k, 2) = Nguon(i, 2)
            Arr_SapHetHan(k, 3) = Nguon(i, 3)
            Arr_SapHetHan(k, 4) = Nguon(i, 4)          'Ten VTTB
            Arr_SapHetHan(k, 5) = Nguon(i, 5)          'Ma VT
            Arr_SapHetHan(k, 6) = Nguon(i, 6)          'So luong nghiem thu
            Arr_SapHetHan(k, 7) = Nguon(i, 7)
            Arr_SapHetHan(k, 8) = Nguon(i, 7) - Date
            'Don gia
            Arr_SapHetHan(k, 9) = Nguon(i, 8)          'Don gia
            Arr_SapHetHan(k, 10) = Nguon(i, 9)          'Don gia
            Arr_SapHetHan(k, 11) = Nguon(i, 10)          'Don gia
          
      End If
    Next i
    'Chay kiem tra dau viec het han
    For i = 1 To Dong
  
      If Nguon(i, 4) <> "" And Nguon(i, 7) < Date And Nguon(i, 7) - Date < 0 And Nguon(i, 12) = "" Then 'Ktra lay nhung vat tu DVSD
            kk = kk + 1
            Arr_HetHan(kk, 1) = kk
            Arr_HetHan(kk, 2) = Nguon(i, 2)
            Arr_HetHan(kk, 3) = Nguon(i, 3)
            Arr_HetHan(kk, 4) = Nguon(i, 4)          'Ten VTTB
            Arr_HetHan(kk, 5) = Nguon(i, 5)          'Ma VT
            Arr_HetHan(kk, 6) = Nguon(i, 6)          'So luong nghiem thu
            Arr_HetHan(kk, 7) = Nguon(i, 7)
            Arr_HetHan(kk, 8) = Nguon(i, 7) - Date
            'Don gia
            Arr_HetHan(kk, 9) = Nguon(i, 8)          'Don gia
            Arr_HetHan(kk, 10) = Nguon(i, 9)          'Don gia
            Arr_HetHan(kk, 11) = Nguon(i, 10)          'Don gia
          
      End If
    Next i
  
    Sheets("Baocao").Select
    With Sheets("Baocao")

        .Range("A6").Resize(kk, 12).Value = Arr_HetHan
      
        LastRow_SHH = Sheets("Baocao").Cells(Rows.Count, "D").End(xlUp).Row
        .Range("B" & LastRow_SHH + 1).Formula = "CONG VIEC SAP HET HAN"
        If k Then
            .Range("A" & LastRow_SHH + 2).Resize(k, 12).Value = Arr_SapHetHan
        End If


'      .Range("C3:F" & 12 + k - 1).WrapText = 1
'      .Range("C3:F" & 12 + k - 1).HorizontalAlignment = xlJustify
'      .Range("A12:M" & 12 + k - 1).Font.Bold = False
      .Range("A4").Resize(kk, 12).Borders.LineStyle = 1
'      .Range("H12:J" & 12 + k + 1).NumberFormat = "#,##0.00"
'      .Range("J" & 12 + k + 1).Formula = "=SUBTOTAL(9,J12:J" & 12 + k & ")"
      'Can chinh
'      .Rows("12:" & LastRow - 1 & "").RowHeight = 35
'      .Rows("" & LastRow & ":" & LastRow + 4 & "").RowHeight = 23
      .PageSetup.PrintArea = "$A$1:$L" & LastRow_SHH + 4 & ""
    
    End With
End Sub
Bạn cần đăng nhập để thấy hình ảnh
 
T

thanhphong

Guest
Tại sao khi liệt kê ra thì không ghi tên người vào cells A1 vào sheet NoiDung? Việc đó khó à?
 

BKKBG

Yêu THVBA nhất
Bạn @quyenpv giải giúp tôi bài toán sau. Nếu bạn giải được thì tôi hỗ trợ cho bạn được.
Tôi có hai sheet Data và sheet NoiDung.
Bạn cần đăng nhập để thấy hình ảnh


Shet Data tôi cần nhặt ra những người mà họ hết hạn ở cột E.
Tôi điền ngày sinh của những người hết hạn vào cột H.

Câu hỏi: 18/5/1944 là Tran Van C hay Nguyen Van B? Tôi cần gửi mail cho ai?
 

tuhocvba

Administrator
Thành viên BQT
Topic này không đủ dữ kiện để hỗ trợ. Tôi rất tiếc, topic này sẽ khóa để không làm mất thời gian quý báu của mọi người. Tôi không muốn bạn @quyenpv viết một bài yêu cầu hỗ trợ nào trong 6 tháng, bắt đầu kể từ hôm nay.
 
Trạng thái
Không mở trả lời sau này.
Top