Phạm Duy Hiếu 
Phạm Duy Hiếu 
Thảo luận 13 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 134 lượt xem

giúp em em muốn tìm cột cuối cùng rồi copy dữ liệu để điền vào cột

Thầy ơi, thầy giúp em với ạ, em muốn tìm cột cuối cùng rồi copy dữ liệu để điền vào cột tiếp theo thì làm thế nào ạ?

https://docs.google.com/spreadsheets/...

Thảo luận 13 câu trả lời
Lượt xem 134 lượt xem
Vỗ tay vỗ tay
Phạm Duy Hiếu  09:09 - Sep 27, 2021

Chào bạn bạn đang muốn code tìm cột cuối đúng không? bạn đọc bài viết sau, file của bạn chưa chia sẻ lên gitiho không xem được bạn nhé.

https://gitiho.com/blog/vba-8211-huon...


Vỗ tay vỗ tay
Phạm Duy Hiếu  15:09 - Sep 27, 2021

https://docs.google.com/spreadsheets/...

em muốn tìm cột cuối cùng của dòng 25 ( ví dụ hiện dữ liệu đang ở cột R ) sau đó copy dữ liệu của ( A1:A24 ) để điền vào cột tiếp theo là cột S thì làm thế nào Thầy ơi?. Em chưa copy tất cả dữ liệu từ A1:A24 để điền vào cột S được, mong Thầy chỉ em với ạ



Vỗ tay vỗ tay
Phạm Duy Hiếu  17:09 - Sep 27, 2021

Câu lệnh tìm cột cuối có thể viết như sau:

Dim lastColumn As Integer
lastColumn = ws.Cells(25, ws.Columns.Count).End(xlToLeft).Column

trong đó số 25 thể hiện số dòng mà bạn muốn dùng làm căn cứ để tìm.

=> khi đó lastColumn sẽ là 1 con số (chứ không phải chữ cái). Để viết được thành dạng Range bạn có thể viết theo phương pháp:

Range(Cells(1, lastColumn), Cells(24, lastColumn)).Value = Range("A1:A24")


Vỗ tay vỗ tay
Phạm Duy Hiếu  16:09 - Sep 28, 2021

https://drive.google.com/file/d/136u9...

Thầy ơi, em viết code nhưng khi chạy nó lại bị hiện tượng không copy dữ liệu vào cột S mà các dữ liệu của cột R mất hết luôn. Ấn lần nữa là các dữ liệu cột Q mất hết.... cứ ấn là mất hết cho đến khi quay lại cột đầu tiên cột A cũng mất... Em nhờ Thầy chỉnh sửa lại lỗi giúp em với ạ. 



Vỗ tay vỗ tay
Phạm Duy Hiếu  16:09 - Sep 28, 2021
Sub timcotcuoicung()
    Dim lastColumn As Integer
    With Sheet1
        lastColumn = .Cells(25, .Columns.Count).End(xlToLeft).Column
    End With
    Range(Cells(1, lastColumn), Cells(25, lastColumn)).Value = Range("A1:A25")
    
End Sub
Vỗ tay vỗ tay
Phạm Duy Hiếu  08:09 - Sep 29, 2021
Chào bạn bạn mở quyền ra giúp giúp gitiiho để có thể tải nhé, ở đây chỉ có quyền xem
Vỗ tay vỗ tay
Phạm Duy Hiếu  13:09 - Sep 29, 2021

https://drive.google.com/file/d/1rLv9...

Dạ đây Thầy ơi, em nhờ Thầy xem giúp em với ạ



Vỗ tay vỗ tay
Phạm Duy Hiếu  16:10 - Oct 04, 2021

Thầy ơi, Thầy xem trợ giúp em vấn đề trên với ạ. Em chưa xử lý được Thầy à

Vỗ tay vỗ tay
Phạm Duy Hiếu  17:10 - Oct 04, 2021

Chào bạn bạn thử code sau nhé

Sub CopyAndPates()
 Dim dc As Long
    dc = Sheet1.Range("A" & Sheet1.Rows.Count).End(xlUp).Row
 
    Dim LastCol As Integer
    With ActiveSheet
        LastCol = .Cells(25, .Columns.Count).End(xlToLeft).Column
        Range(Cells(1, 1), Cells(dc, LastCol)).Copy
        .Cells(1, LastCol + 1).Select
        .Paste
    End With
End Sub
Vỗ tay vỗ tay
Phạm Duy Hiếu  21:10 - Oct 04, 2021

Dạ code trên của Thầy đang copy toàn bộ từ vùng (A1:R28) paste vào cột tiếp theo ( cột S ). E chỉ muốn copy vùng (A1:A25) rồi điền vào cột tiếp theo là cột S, ấn thì thì lại tiếp tục lưu đến cột T....thôi Thầy ạ.

Vỗ tay vỗ tay
Phạm Duy Hiếu  08:10 - Oct 05, 2021

Chào bạn bạn thay đổi lại một chút nhé 

With ActiveSheet
        LastCol = .Cells(dc, .Columns.Count).End(xlToLeft).Column
        Range(Cells(1, 1), Cells(dc, 1)).Copy
        .Cells(1, LastCol + 1).Select
        .Paste
End With

Phần dòng cuối bạn xem lại do có 1 cái text nhé.

Vỗ tay vỗ tay
Phạm Duy Hiếu  22:10 - Oct 06, 2021

Dạ vâng ạ, em cảm ơn Thầy ạ

Vỗ tay vỗ tay
Phạm Duy Hiếu  09:10 - Oct 07, 2021
Chúc bạn học tốt cùng gitiho
Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông