2013-07-11 39 views
5

Tôi đang cố gắng chọn một ô trong excel bằng cách sử dụng vba thông qua việc sử dụng hàm phạm vi.Sử dụng chức năng "Ô" ở excel vba

Tôi đã thực hiện việc này nhiều lần trước khi sử dụng các biến để chỉ định phạm vi thay vì chỉ số.

Tuy nhiên, tôi dường như không thể chọn dải ô bằng chức năng ô.

Tôi biết rằng điều này là có thể vì tôi đã thực hiện nhiều nghiên cứu và đã thấy mã của người khác sẽ chạy thành công khi sử dụng chức năng này.

Dưới đây là cú pháp tôi đang sử dụng để thử và chọn phạm vi (chỉ có 1 ô).

Thêm vào đó, khi tôi chạy mã tôi nhận được thông báo sau:

"lỗi Run-time '1004': Phương pháp 'Range' của object'_Global' thất bại".

Cảm ơn mọi sự giúp đỡ.

Dim item As String 
Dim itempaste As Boolean 
Dim itemcnt As Integer 

itemcnt = 1 
itempaste = False 
Range("X3").Select 
Do 
    item = ActiveCell.Value 
    If item <> "" Then 
     Range("A18").Select 
     Do 
      If ActiveCell.Value = "" Then 
       ActiveCell.Value = item 
       itempaste = True 
      Else 
       ActiveCell.Offset(1, 0).Select 
      End If 
     Loop Until itempaste = True 
    End If 
    itemcnt = itemcnt + 2 
    Range(Cells(1, (21 + itemcnt))).Select 
Loop Until itemcnt = 11 

Trả lời

5

Bạn đang sử dụng loại Phạm vi như một hàm; cuộc gọi Cells thực sự trả về cho bạn một đối tượng Range. Thay vì

Range(Cells(1, (21 + itemcnt))).Select 

..try:

Cells(1, (21 + itemcnt)).Select 

Nếu bạn muốn trở thành rõ ràng hơn:

Dim target As Range 
Set target = Cells(1, (21 + itemcnt)) 
target.Select 
Các vấn đề liên quan