【发布时间】:2016-07-13 19:42:01
【问题描述】:
我正在尝试消除一长串重复的击键。
我正在接受以下形式的文本:
“XXXXXXXX XXXXXXXXX(XXXX XXXXX XXXXXXX)”
并在最后删除位,使其成为:
“XXXXXXXX XXXXXXXXX”
我正在使用按键:F2、Shift+Ctrl+RtArrow、Shift+Ctrl+RtArrow、Shift+Ctrl+RtArrow、Shift+RtArrow、Backspake、Enter
我尝试使用 Excel 的“记录宏”功能记录这一系列击键。如果我在下一个单元格上运行录制的宏,包含“YYYYYYYY YYYYYYYYY(YYYY YYYYYY YYYYYYYY)”,它不会执行我录制的击键,它会用我录制宏的单元格的结果内容替换单元格的内容在,“XXXXXXXX XXXXXXXXX”。
Excel 生成的代码是这样的,它似乎忽略了我执行的击键,只是复制了结果:
Sub DelProcVintage()
'
' DelProcVintage Macro
'
' Keyboard Shortcut: Ctrl+j
'
ActiveCell.FormulaR1C1 = "XXXXXXXX XXXXXXXX"
ActiveCell.Offset(1, 0).Range("A1").Select
End Sub
有没有办法通过宏发出我的击键序列?
【问题讨论】:
-
使用
SendKeysExcel VBA - SendKeys Method -
另外,当你说你将
XXXX XXX (XXX XX XXX)转换为XXXX XXX时,你基本上是在删除(之后的所有内容吗?如果是这样,那么这对你来说可能是一个更好的资源Remove Text Before/After Character -
ActiveCell.Value = Trim(Split(ActiveCell.Value,"(")(0)) -
谢谢你,这两个建议都有帮助!