#excel #vba
Вопрос:
Итак, некоторое время назад я наткнулся на макрос, который позволил бы вам сделать выбранные ячейки абсолютными или относительными ссылками (вам будет предложено выбрать 1 из 4 вариантов), а затем соответствующим образом обновить. Вам не нужно было настраивать код для ввода имен книг/листов, так как он работал с текущими активными/выбранными ячейками. Я снова искал его и не мог найти. Есть какие-нибудь идеи?
Ответ №1:
Может, это от Скотта?
Вы выбираете диапазон/область, и это дает вам возможность изменить ее.
Затем вы можете выбрать между Абсолютной, Абсолютной строкой, Абсолютной Колонкой или Относительной ссылкой.
Sub ConverReferenceType()
On Error Resume Next
Set myRange = Application.Selection
Set myRange = Application.InputBox("Select one Range that you want to covert reference type:", "ConvertReferenceType", myRange.Address, Type:=8)
Set myRange = myRange.SpecialCells(xlCellTypeFormulas)
myIndex = Application.InputBox("Select a reference type from below list:" amp; Chr(13) amp; Chr(13) _
amp; "Absolute = 1" amp; Chr(13) _
amp; "Row absolute = 2" amp; Chr(13) _
amp; "Column absolute = 3" amp; Chr(13) _
amp; "Relative = 4", "ConvertReferenceType", 1, Type:=1)
For Each R In myRange
R.Formula = Application.ConvertFormula(R.Formula, XlReferenceStyle.xlA1, XlReferenceStyle.xlA1, myIndex)
Next
End Sub
Если вы не хотите, чтобы поле ссылки отображалось, вы можете закомментировать эту строку
'Set myRange = Application.InputBox("Select one Range that you want to covert reference type:", "ConvertReferenceType", myRange.Address, Type:=8)