Chào bạn,
Làm thế nào để VBA nhận diện được Code Name trong tình huống sau:
Dim wb1 As Workbook, wb2 As Workbook
Set wb1 = Application.ThisWorkbook
Set wb2 = Workbooks.Open(SelectedFile)
' Làm sạch dữ liệu trước khi Copy
wb1.Sheet1.Cells.ClearContents 'Sheet1 là CodeName của wb1
' Copy dữ liệu từ wb2 sang wb1
wb2.Sheet1.Cells.Copy Destination:=wb1.Sheet1.Range("A1")
VBA báo lỗi là không nhận diện được CodeName sheet1. Nếu thay cách gọi bằng tên Sheet hay thứ tự sheet thì code hoạt động tốt.
Cám ơn các bạn,
Trân trọng!
Khi viết kèm với đối tượng workbook thì VBA không cho phép viết worksheet theo code-name mà buộc phải viết theo sheet-tab-name hoặc số thứ tự của Sheet nhé.
Đây là nguyên tắc của VBA rồi, không làm khác đi được.