如何创建仅对选中单元格生效的Excel宏?
修改为仅对选中单元格生效的VBA宏
以下是调整后的代码,直接针对你选中的单元格区域执行操作,无需依赖固定范围:
Sub XLookupSelectedCells() Dim selectedRange As Range Set selectedRange = Selection ' 给选中区域批量设置XLOOKUP公式 selectedRange.FormulaR1C1 = _ "=XLOOKUP(RC[9],'[Region Name and Numbers.xlsx]Region Store'!C2,'[Region Name and Numbers.xlsx]Region Store'!C1,0,0)" ' 将公式转换为静态值 selectedRange.Value = selectedRange.Value End Sub
关键调整说明:
- 用
Selection直接获取你选中的单元格区域,替代原代码中固定的Range("B2:B991"),适配任意选中范围 - 移除了冗余的
Select和AutoFill操作,直接给整个选中区域批量设置公式,执行效率更高 - 通过
selectedRange.Value = selectedRange.Value一步完成公式转值,替代原有的复制粘贴流程,代码更简洁
内容的提问来源于stack exchange,提问作者Jeff Meyer
相关产品推荐
相关产品推荐

