Chọn dòng trong bảng tính.

Liên hệ QC

Duong gia

Thành viên thường trực
Tham gia
15/1/07
Bài viết
352
Được thích
118
Trong bảng tính Excel mình muốn chọn hết cột A thì Columns("A:A").Select và ngược lại chọn dòng thì sao? Và giả sử con trỏ đang nằm ở bất kỳ dòng nào trên bảng tính khi ta click vào nút Command thì nó sẽ chọn từ B đến F của dòng đó thì viết Code thế nào nhỉ? Mong các bác chỉ giúp. Thanks
 
Lần chỉnh sửa cuối:
Bạn xem file đính kèm.
PHP:
Sub Chon_Dong()
    Range("1:1").Select --> Chọn dòng 1
End Sub

Sub B_F()
    Range("B" & ActiveCell.Row & ":F" & ActiveCell.Row).Select
End Sub
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Xin lỗi, như thế này mới đúng là ý bạn ấy. Khi con trỏ ở dòng nào sẽ chọn dòng đó từ cột B đến F
Mã:
Sub chon()
Cells(ActiveCell.Row, 2).Resize(1, 5).Select
End Sub

Ồ! đoạn code 2 của Long đã giải quyết, thôi thì thêm 1 cách chọn.
 
Lần chỉnh sửa cuối:
Upvote 0
Xin lỗi, như thế này mới đúng là ý bạn ấy. Khi con trỏ ở dòng nào sẽ chọn dòng đó từ cột B đến F
Mã:
Sub chon()
Cells(ActiveCell.Row, 2).Resize(1, 5).Select
End Sub
Ồ! đoạn code 2 của Long đã giải quyết, thôi thì thêm 1 cách chọn.
Em vẫn thường dùng cách Resize này, vì nó rất uyển chuyển... chứ &... & theo kiểu:
Range("B" & ActiveCell.Row & ":F" & ActiveCell.Row)
theo em là không hay! (trừ trường hợp không tìm ra cách nào khác)
Trong trường hợp cái ActiveCell này còn làm việc gì đó khác nữa, em sẽ dùng With... End With (càng uyển chuyển hơn là cái chắc)
PHP:
Sub chon()
     With ActiveCell
       Cells(.Row, 2).Resize(, 5).Select
       '... xử lý thêm gì đó có liên quan đến ActiveCell...
     End With
End Sub
Với DuongGia: Tôi không hiểu bạn Select để làm gì, nhưng trong VBA tôi khuyên bạn nên tránh xa mấy vụ Select này đi ---> Muốn gán giá trị hay làm gì đó cứ làm trực tiếp luôn.. đừng Select mất thời gian lắm
 
Lần chỉnh sửa cuối:
Upvote 0
"Võ công" của Ndu dạo này có vẻ thâm hậu thật. Cố gắng đắc đạo còn "Cứu nhân, độ thế" nhé.
Đúng là trong VBA làm gì thì làm chứ cứ select vủa chậm, vừa loạn cả màn hình... Coi chừng mấy bạn yếu tim nữa.
 
Lần chỉnh sửa cuối:
Upvote 0
Với DuongGia Với DuongGia: Tôi không hiểu bạn Select để làm gì, nhưng trong VBA tôi khuyên bạn nên tránh xa mấy vụ Select này đi ---> Muốn gán giá trị hay làm gì đó cứ làm trực tiếp luôn.. đừng Select mất thời gian lắm


Đôi khi phải định dạng hoặc highlight cho người sử dụng biết thì cũng cần chứ,

đúng không Ndu
 
Upvote 0
To tigertiger:
Theo mình, Ndu có lý. Trong VBA cần gán thuộc tính cho range hay Object thì Refer to đến nó rồi cứ việc gán chứ có phụ thuộc vào con trỏ đâu? Thậm chí, đang Active Sheet1 nhưng vẫn định dạng Sheet khác. Trong code do trình Record Macro thu lại thì nó hay có những lệnh này. Nhưng phải nói trình Record tạo mã hầu như hiệu quả, độ linh hoạt thấp và nhiều lệnh thừa.
Trong Code đoạn mã nào không cần thiết hay thừa thì phải loại bỏ để tối ưu code.
 
Upvote 0
To tigertiger:
Theo mình, Ndu có lý. Trong VBA cần gán thuộc tính cho range hay Object thì Refer to đến nó rồi cứ việc gán chứ có phụ thuộc vào con trỏ đâu? Thậm chí, đang Active Sheet1 nhưng vẫn định dạng Sheet khác. Trong code do trình Record Macro thu lại thì nó hay có những lệnh này. Nhưng phải nói trình Record tạo mã hầu như hiệu quả, độ linh hoạt thấp và nhiều lệnh thừa.
Trong Code đoạn mã nào không cần thiết hay thừa thì phải loại bỏ để tối ưu code.
Có lẽ Tigertiger muốn nói đến trường hợp Highlight cả dòng (tại vị trí ActiveCell)... khi ấy người ta sẽ tô màu để phân biệt
Tuy nhiên em nghĩ dù có tô màu đi nữa cũng không nhất thiết phải Select (cứ vô tư mà tô thôi)
 
Upvote 0
Web KT

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

Back
Top Bottom