toanthanhcong
Thành viên mới

- Tham gia
- 23/9/09
- Bài viết
- 39
- Được thích
- 2
Bạn định học VBA hay đang định hỏi để ứng dụng vào công việc vậy?Giờ làm thế nào để khi kích đúp vào cột B (Ví dụ B14) tại sheet 1 thì nó sẽ copy vùng B1414 tại sheet 1 sang dòng kế tiếp bắt đầu từ cột E (E 21) tại sheet 2
Mình ứng dụng vào công việc thôi,Bạn định học VBA hay đang định hỏi để ứng dụng vào công việc vậy?
Nếu Thích Code thì tham khảo nha....Copy Paste vào ThisWorkbbok Nha (VBA)Giờ làm thế nào để khi kích đúp vào cột B (Ví dụ B14) tại sheet 1 thì nó sẽ copy vùng B1414 tại sheet 1 sang dòng kế tiếp bắt đầu từ cột E (E 21) tại sheet 2
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
MsgBox "OK", , "GPE"
End Sub
Giờ làm thế nào để khi kích đúp vào cột B (Ví dụ B14) tại sheet 1 thì nó sẽ copy vùng B1414 tại sheet 1 sang dòng kế tiếp bắt đầu từ cột E (E 21) tại sheet 2
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([b:b], Target) Is Nothing Then
Sheet2.[E60000].End(3).Offset(1).Resize(Target.End(1).Row, 3).Value = Target.Resize(Target.End(1).Row, 3).Value
End If
End Sub
Chuẩn luôn anh ak , thanhs anh nhiềuSửa câu lệnh " Sheet2.[E60000].End(3).Offset(1).Resize(Target.End(1).Row, 3).Value = Target.Resize(Target.End(1).Row, 3).Value" thành
"Sheet2.[E60000].End(3).Offset(1).Resize(1, 3).Value = Target.Resize(1, 3).Value" thử xem ( chưa coi file nên có gì bạn test )
Đoạn code trên thiếu câu lệnh trả về : Application.ScreenUpdating = True
Code này vẫn không ổn, VD copy MH001 ở sheet 1 thì nó copy luôn 3 dòng, nếu nó chỉ copy đúng 1 dòng B13-D13 thì OK
Hồi xưa lúc mới bắt đầu học vba, thấy các Thầy,Anh,Chị dùng các viết tắt trên tìm hiểu muốn đuối luôn. Do đó mình tự dặn lòng không bao giờ viết tắt để những người mới như mình có thể hiểu được !bạn nên tìm hiểu các lệnh
offset, resize, end(xltoleft),end(xltorigh).........(hay viết tăt là end(1),end(2),end(3),end(4)........qua phải,qua trái, lên xuống)
rất hữu ích cho bạn một khi bạn chơi với vba
Anh ơi sao em đưa 4 dòng vào nó lại báo lỗi anh nhỉHồi xưa lúc mới bắt đầu học vba, thấy các Thầy,Anh,Chị dùng các viết tắt trên tìm hiểu muốn đuối luôn. Do đó mình tự dặn lòng không bao giờ viết tắt để những người mới như mình có thể hiểu được !
Số 4 màu đỏ đó là số cột chứ không phải dòng bạn ạ!Anh ơi sao em đưa 4 dòng vào nó lại báo lỗi anh nhỉ
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("B:B"), Target) Is Nothing Then
Application.ScreenUpdating = False
Application.ScreenUpdating = True
Sheets("NKTONG").[G6000].End(4).Offset(1).Resize(1, 4).Value = Target.Resize(1, 4).Value
End If
Sheets("NKTONG").Activate
End Sub