2014-09-24 6 views
0

По какой-то причине я продолжаю получать глобальную ошибку времени выполнения при попытке запустить следующий скрипт. Любая помощь будет принята с благодарностью.Ошибка времени выполнения '1004' в excel vba

Sub crossUpdate() 
Dim rng As Range 

Set rng = Sheet1.Cells.Range("A2").End(xlDown) 

Range(rng).Select 



End Sub 
+0

Является ли этот код позади самого Лист1, или возможно, другой лист? – ne1410s

ответ

0

Попробуйте изменить свой код в:

Sub crossUpdate() 
    Dim rng As Range 
    ActiveWorkbook.Sheets("Sheet1").Select 
    Set rng = ActiveWorkbook.Sheets("Sheet1").Range("A2").End(xlDown) 
    rng.Select 
End Sub 
0

Всякий раз, когда вы выбрать диапазон, вы должны быть уже Выберите эд надлежащего листа. Также исправить Выбрать команду Try:

Sub crossUpdate() 
    Dim rng As Range 
    Set rng = Sheet1.Cells.Range("A2").End(xlDown) 
    Sheet1.Select 
    rng.Select 
End Sub 

EDIT # 1

Эта версия будет Выбрать блок ячеек:

Sub crossUpdate() 
    Dim rng As Range, N As Long 
    Sheet1.Select 
    N = Cells(Rows.Count, "A").End(xlUp).Row 
    Set rng = Cells.Range("A2:A" & N) 
    rng.Select 
End Sub 
+0

Хорошо, это сработало, но это не помогло, как я думал. Как мне изменить его так, чтобы он был выбран из ячейки A2 в последнюю заполненную ячейку. (Пока его единственный выбор последней заселенной ячейки) –

+0

См. Мой ** ИЗМЕНИТЬ # 1 ** –

Смежные вопросы