Привет, просто быстрый вопрос. Мне нужно знать, как я могу эффективно хранить значение ActiveCell? Я пытался:

Dim acStore As String
acstore = ActiveCell.Cells(1, 1)

Но это не работает. Обычно я получаю сообщение об ошибке несоответствия.
Я даже пробовал Dim acstore As Range, но безрезультатно.
Что я хочу сделать, это сократить этот код:

ActiveCell.Cells(1, 5).Copy _
    Destination:=wsTest.Range("A" & Rows.Count).End(xlUp).Offset(1)

Примерно так:

acStore.Copy Destination:=wsTest.Range("A" & Rows.Count).End(xlUp).Offset(1)
0
user2519726 17 Фев 2015 в 11:33
Кстати более длинный код работает. я просто хочу сократить его.
 – 
user2519726
17 Фев 2015 в 11:36

2 ответа

Ah рассмотрел ваш вопрос, и правильный способ сделать это:

Dim acstore As Range
Set acstore = ActiveCell(1, 5)

Затем вы можете использовать код, который вы хотите.

0
L42 17 Фев 2015 в 12:00
Но мне нужна только определенная ячейка. не весь ряд.
 – 
user2519726
17 Фев 2015 в 12:01
Да правильно. Но когда я редактировал вопрос OP, я увидел, что OP нужно просто передать объект в переменную.
 – 
L42
17 Фев 2015 в 12:03
Ваше редактирование появилось, когда я нажал кнопку «Добавить комментарий» - если бы я сначала увидел редактирование, я бы не прокомментировал :)
 – 
SierraOscar
17 Фев 2015 в 12:06

Если значение активной ячейки является строкой, то будет работать следующее:

acStore$ = ActiveCell.Value

Если значение не является строкой, но вы хотите, чтобы оно было сохранено как одно, используйте:

acStore$ = CStr(ActiveCell.Value)
0
SierraOscar 17 Фев 2015 в 12:02
По-видимому, он не работает с использованием метода L42. я получаю несоответствие типа в моей следующей строке кода: wsTest.Range("A" & Rows.Count).End(xlUp).Value = wsTest.Range("A" & Rows.Count).End(xlUp ).Value + "-C" .. что это делает, так это вставляет информацию об активной ячейке, например, серию чисел, например, идентификационный номер (например, 12456), затем добавляет идентификатор на другой лист, поэтому ввод будет 123456- С. изменить: я не знаю, как использовать теги здесь, чтобы сделать его частью моего ответа в виде кода
 – 
user2519726
17 Фев 2015 в 12:15