У меня есть несколько рабочих листов в одной рабочей книге. Рабочие листы, которые меня интересуют: WD, Hit, Sam, Sea и Max. Каждая страница использует один и тот же шаблон, поэтому все должно совпадать ...
Вот вопрос. В некоторых ячейках моей главной страницы (-Listings-) у меня есть формулы для получения информации с другой страницы. Я хотел бы создать макрос, который будет читать ячейку O1 и искать A1:AA12, и заменить его новым листом. Пример: ячейка C9 имеет = (WD!B3) E9 имеет = (WD!C3) ..... и т.д.
Код я использую
Sub FindNReplace1()
'
' FindNReplace Macro
'
'
Cells.Replace What:=O1, Replacement:="Sea", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
Range("O1").Select
ActiveCell.FormulaR1C1 = "Sea"
End Sub
Это меняет мои формулы на лист Seagate. Я не знаю, как искать только определенные диапазоны, поэтому мне тоже понадобится помощь.
Я подумал, что я бы использовал 5 макросов. По одному на каждое имя листа, в который нужно преобразовать формулы. Я знаю, что мне не нужно добавлять дополнительную часть в мой код, чтобы выбрать O1 и вставить в него имя, учитывая, что поиск и замена сделают это для меня.
Если бы используемые мной макросы также могли переключаться, это было бы здорово. Это совсем другой вопрос, но я добавлю его и здесь.
Я использую эти макросы в качестве кнопок, чтобы перейти к следующему элементу инвентаря, который будет внесен в мой журнал. Они настроены для перехода на лист "WD", перехода к следующей ячейке вверх / вниз и возврата на страницу моего инвентаря. Это единственные макросы, которые нужно будет изменить вместе с формулами на моей странице списков.
вверх
Sub autoup()
'
' autoup Macro
'
'
Sheets("WD").Select
Selection.Offset(-1, 0).Select
Sheets("-LISTINGS-").Select
Range("H11").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = ""
Range("F9").Select
Selection.Copy
End Sub
вниз
Sub autodown()
'
' autodown Macro
'
'
Sheets("WD").Select
Selection.Offset(1, 0).Select
Sheets("-LISTINGS-").Select
Range("H11").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = ""
Range("F9").Select
Selection.Copy
End Sub