Hỏi về cách giữ nguyên công thức khi thay đổi dòng cột

Liên hệ QC

hpmongmanh

Thành viên mới
Tham gia
23/6/08
Bài viết
16
Được thích
3
Dear GPEs
Giả sử mình có 2 Sheet tại Sheet2 có một đoạn mã lệnh bằng VBA như thế này :
"...
Cells(2,2).Value=Sheet1.Cells(4,8).Value 'Ô B2 của sheet2 lấy giá trị trong ô H4 của sheet1
..."
Nếu sheet2 không có gì thay đổi về dòng cột thì sheet1 vẫn ok, nhưng nếu giá trị trong ô H4 bị thay đổi do thêm dòng hoặc cột thì giá trị trong ô B2 của sheet2 không còn đúng nữa. Vậy xin hỏi các bác cách khắc phục làm như thế nào.
Trân trọng cảm ơn.
 
Dear GPEs
Giả sử mình có 2 Sheet tại Sheet2 có một đoạn mã lệnh bằng VBA như thế này :
"...
Cells(2,2).Value=Sheet1.Cells(4,8).Value 'Ô B2 của sheet2 lấy giá trị trong ô H4 của sheet1
..."
Nếu sheet2 không có gì thay đổi về dòng cột thì sheet1 vẫn ok, nhưng nếu giá trị trong ô H4 bị thay đổi do thêm dòng hoặc cột thì giá trị trong ô B2 của sheet2 không còn đúng nữa. Vậy xin hỏi các bác cách khắc phục làm như thế nào.
Trân trọng cảm ơn.
Mình biết 1 cách là vào Format -> Name -> Define để đặt tên cho nó, sau đó vào VBA tham chiếu theo tên vừa đặt. Không biết có còn cách nào khác hay hơn không.
 
Dear GPEs
Giả sử mình có 2 Sheet tại Sheet2 có một đoạn mã lệnh bằng VBA như thế này :
"...
Cells(2,2).Value=Sheet1.Cells(4,8).Value 'Ô B2 của sheet2 lấy giá trị trong ô H4 của sheet1
..."
Nếu sheet2 không có gì thay đổi về dòng cột thì sheet1 vẫn ok, nhưng nếu giá trị trong ô H4 bị thay đổi do thêm dòng hoặc cột thì giá trị trong ô B2 của sheet2 không còn đúng nữa. Vậy xin hỏi các bác cách khắc phục làm như thế nào.
Trân trọng cảm ơn.
Đặt một name cho cái ô đó và trong code lấy giá trị từ name.
Như trường hợp của bạn thì làm như thế này:
Đặt name Cll=sheet1!$H$4
Và trong code thì viết như thế này:
Mã:
Cells(2,2).Value=[Cll].Value
 
Web KT

Bài viết mới nhất

Back
Top Bottom