Здравствуйсте, друзья!
Помогите разобраться почему код выдает ошибку?
Ошибку выдает на последней строчке, не хочет вводить такую формулу в ячейку, ругается. (1004 ошибка). Не могу понять почему.
Суть проста: есть переменная, хочу чтобы VLookup делал поиск не по фиксированной ячейке, а по переменной объявленной в коде. Переменная объявлена как Range, как видно из кода выше это объединенная ячейка на листе. Хочу чтобы VlookUp мне искал содержимое объединенной ячейки в фиксированном месте.
Сразу несколько оговорок. Объединенная ячейка всегда будет в разных местах по ходу кода, поэтому и надо поиск делать с помощью переменной, а не фиксированно. Пробовал также ActiveCell = Selection.Application.WorksheetFunction.VLookup(rn, Sheet1.Range("B100:C100"), 2, False), тоже не работает. Почему через формулу не работает тоже не пойму, вроде Амперсанды выставил, вроде указал чтобы искал значение, а не саму переменную, так как она объявленная не как String, а как Range. Видел примеры подобного кода, все работало.
Заранее всем спасибо
Помогите разобраться почему код выдает ошибку?
Код |
---|
Sub EXAMPLE () Dim rn As Range Application.FindFormat.MergeCells = True Set rn = Cells.Find("", After:=ActiveCell, SearchFormat:=True) rn.Select Sheets("MAIN").Cells(5, 5).Select ActiveCell.FormulaR1C1 = "=VLOOKUP(" & rn.Value & ",Sheet1!C[1]:C[2],2,0)" End Sub |
Ошибку выдает на последней строчке, не хочет вводить такую формулу в ячейку, ругается. (1004 ошибка). Не могу понять почему.
Суть проста: есть переменная, хочу чтобы VLookup делал поиск не по фиксированной ячейке, а по переменной объявленной в коде. Переменная объявлена как Range, как видно из кода выше это объединенная ячейка на листе. Хочу чтобы VlookUp мне искал содержимое объединенной ячейки в фиксированном месте.
Сразу несколько оговорок. Объединенная ячейка всегда будет в разных местах по ходу кода, поэтому и надо поиск делать с помощью переменной, а не фиксированно. Пробовал также ActiveCell = Selection.Application.WorksheetFunction.VLookup(rn, Sheet1.Range("B100:C100"), 2, False), тоже не работает. Почему через формулу не работает тоже не пойму, вроде Амперсанды выставил, вроде указал чтобы искал значение, а не саму переменную, так как она объявленная не как String, а как Range. Видел примеры подобного кода, все работало.
Заранее всем спасибо