2013-07-11 17 views
5

Próbuję wybrać komórkę w programie excel za pomocą vba za pomocą funkcji zakresu.Korzystanie z funkcji "Komórki" w programie excel vba

Zrobiłem to wiele razy, zanim użyłem zmiennych do określenia zakresu zamiast zwykłych liczb.

Jednak nie mogę wybrać zakresu za pomocą funkcji komórek.

Wiem, że jest to możliwe, ponieważ wykonałem wiele badań i widziałem kod innych ludzi, który z powodzeniem będzie działał przy użyciu tej funkcji.

Poniżej znajduje się składnia, której używam, aby spróbować wybrać zakres (który jest tylko 1 komórką).

Dodatkowo, gdy uruchamiam kod pojawia się następujący komunikat:

"Run-time error '1004': Metoda 'zasięgu' object'_Global” nie powiodło się".

Dziękuję za wszelką pomoc.

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 

Odpowiedz

5

Używasz typu Zakres jak funkcja; wywołanie Cells faktycznie zwraca już obiekt Range. Zamiast

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

..try:

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

Jeśli chcesz być bardziej wyraźne:

Dim target As Range 
Set target = Cells(1, (21 + itemcnt)) 
target.Select 
Powiązane problemy