如果您在 Excel 中编辑公式,Excel 会显示公式的参数以及您当前正在查看的参数。例如,如果您输入“=INDEX(”,Excel 将显示“INDEX(array, row_num, [column_num])”。如果您单击其中一个,该部分会突出显示,然后按 F9 键,它会计算该公式部分。
我可以使用 F2 开始编辑并使用 F9 计算片段,但是是否有键盘快捷键可以“单击您现在所在的整个片段”?
如果这可以在 vba 中实现,那么触发此行为的相关方法是什么?
答案1
据我所知,没有任何东西能够用一个组合键来选择整个参数。
但是,Excel 确实允许您使用 Ctrl-右箭头和 Ctrl-左箭头,并且它们可以按照标准 Windows 方式与 Shift 结合使用。
因此,如果在参数的开头,可以按 Ctrl-Shift-右箭头并期望 Excel 突出显示该参数。
当然,这样做有两个困难。一个是 Excel 实际上会突出显示到下一个标点符号(到它开始的那一侧,因此如果从它的左侧开始,它会突出显示到下一个标点符号的左侧)。对于许多作为参数输入的内容,这没问题。看看你在哪里(在参数中?在它的左侧?在它的右侧?)并采取相应的行动。例如,假设参数是FALSE
a 中的第四个参数的单词VLOOKUP()
。你可能在“A”和“L”之间。你可以按 Ctrl-左箭头键到达参数的开头,然后按 Ctrl-Shift-右箭头键突出显示到它的结尾。
当指定范围之类的东西时,就会出现复杂性。任何带有标点符号的东西,尤其是范围,因为它们非常常见。所以在这种情况下,你必须做更多,并更加注意。最简单的方法是使用 Ctrl-Appropriate Arrow 转到你所在的末尾,然后使用 Ctrl-Shift-Other Arrow 一点一点移动到参数的开头。简单,但更复杂。
另一个复杂因素是 Excel 不会以相同的方式处理双引号("
,用于字符串参数条目或涉及字符串(如某些 xxxIF 函数))。因此,您有一个像 这样的字符串,并且位于其中的某个位置。Ctrl-左箭头键位于起始的右侧,但再次按下将带您进入前一个参数,而不仅仅是其左侧。因此,您到达它的右侧,然后单独按下左箭头键并开始 Ctrl-Shift-右箭头键,直到到达其末尾,然后只需按 Shift-右箭头键即可将右侧包含在突出显示中。"="&A2
"kjsdhfks"
"
"
Excel 也以与一般标点符号相同的方式处理空格。偶尔其他位也会像双引号字符一样处理(例如负号)。你只需要比你想象的更加注意。
因此,如果您有一款可以构建按键宏的优质游戏键盘,并且这就是您提出这个问题的原因,那就去做吧。它应该能很好地工作,您可以看看它是否能正确执行给定的实例,如果不能,那么您可以自己手动执行。它可能有效并且很巧妙,如果不行,那么无论如何您都必须手动执行,对吗?
此外,标点符号的重要性可能很棘手,因为做这F9
件事通常需要包含括号但并非总是如此(如果包含了一个,则需要另一个;如果没有,则不需要),并且 Excel 将它们视为因此"
在执行时需要注意。