nvthanhdienbien
Thành viên mới
- Tham gia
- 22/4/16
- Bài viết
- 25
- Được thích
- -5
Bạn có thấy rằng bạn nói 1 đường, viết 1 nẽo không?
Mình muốn viết 1 sub để chạy tại cột C khi cột A là 12 thì ngày ở cột C = ngày tháng ở cột B + 6 tháng và khi cột A là 60 thì ngày cột C = ngày tháng cột B + 12 tháng Hiện mình đã thử sub như sau: Sub gan_tg_st_nh() Set Data = ThisWorkbook.Sheet1 If Data.Range("Q3") = "12" Then Data.Range("V3").Formula = "=Edate(T3;6)" Else Data.Range("V3") = "=EDATE(T3;6" End if End Sub Nếu thay =Edate(T3;6) bằng đoạn văn bản thì chạy bình thường
"sau khi chạy lại không chạy được":...
nhưng sau khi chạy lại không chạy được, các bạn xem giúp mình với
Anh ơi sửa hộ em.Em mới học anh ạ."sau khi chạy lại không chạy được":
Đã chạy xong rồi thì là trạng thái "sau khi chạy". Vậy thì trạng thái "lại không chạy được" là cái quái gì?
Cái file bạn đưa ra có cái code này:
Sub Macro1()
ActiveCell.Cells(C2) = "=IF(A2=12,EDATE(B2,6),EDATE(B2,12))"
Columns("C:C").Select
Selection.NumberFormat = "m/d/yyyy"
End Sub
Tôi cho nó chạy 100 lần đều chra thấy "lại không chạy được" ở đâu cả.
Chỉ khi nào tôi đặt con trỏ ở dòng 1 thì mới bị VBA dãy nảy.
Riêng cái sub mà bạn diễn tả sau dòng "Hiện mình đã thử sub như sau:" thì nó nát như tương, tôi không màng bỏ công xét gì hơn.
Có lẽ bạn chép nó ở đâu đó về.
Nên viết lại code khác từ đầu. Code này thì thẳng tay quên nó đi, không xứng đáng chỉnh sửa chỗ nào cả.
Sửa hộ cách viết tiếng Việt?Anh ơi sửa hộ em.Em mới học anh ạ.