2014-12-05 8 views
0
For i = 1 To 5 
    changeto = CStr(Sheet15.Cells(1, i).Formula) 
    newindustry = getfirstword(Worksheets("Industry Insert Template").Range("C1")) 
    'grab the index position of the comma and exclamation mark 
    intchangeto = InStr(changeto, ",") 
    finalchangeto = InStr(changeto, "!") 
    'extract the worksheet substring 
    finalindustry = Mid(changeto, intchangeto + 1, finalchangeto - intchangeto - 1) 

    If finalindustry <> "'Multiples & EPS'" And finalindustry <> "Technicals" Then 
     finalformula = Replace(changeto, finalindustry, newindustry) 
     Cells(1, i).Formula = finalformula 
    End If 
Next 

В настоящее время это мой макрос, чтобы настроить имя листа.
Я хочу настроить только числовую ссылку.
Заменить числовое значение формулы VBA?

Например:

=VLOOKUP($B1,Industrials!$CA$41:$GG$41,C$8) 

Я хочу, чтобы иметь возможность изменять ячейки 41 в ВПР, чтобы отразить правильную строку.
Как мне пройти через все ячейки и изменить формулу, чтобы отразить это?

+0

Better из для использования названных диапазонов. Для этого они и есть. – ja72

+0

Вы можете взглянуть на использование адреса стиля R1C1: доступ в VBA с помощью '.FormulaR1C1' – Captain

ответ

0

Использование Заменить:

Пример:

Cells (1, i).Formula = Replace(Cells (1, i).Formula, oldRow, NewRow) 

Если значение i связано с номером строки, вы можете использовать его вместо старого ряда и т.д.

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