我写了一个记事本++宏,将SQL查询转换为Vb字符串粘贴到我的VB代码。记事本+宏不处理按钮
主要的是,你可以只按Ctrl
+ Shift
+ E
和宏应该在SQL线从转换的东西像 SELECT a FROM b
TO "SELECT a FROM b" & vbCrLf & _
然后光标应该移动到下一行。
这就是我的宏如下所示:
<Macro name="VB Script" Ctrl="yes" Alt="no" Shift="yes" Key="69">
<Action type="0" message="2453" wParam="0" lParam="0" sParam="" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam='"' />
<Action type="0" message="2451" wParam="0" lParam="0" sParam="" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam='"' />
<Action type="1" message="2170" wParam="0" lParam="0" sParam=" " />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="&" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam=" " />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="v" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="b" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="c" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="r" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="l" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="f" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam=" " />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="&" />
<Action type="1" message="2170" wParam="0" lParam="0" sParam=" " />
<Action type="1" message="2170" wParam="0" lParam="0" sParam="_" />
<Action type="0" message="2300" wParam="0" lParam="0" sParam="" />
</Macro>
我有一些不同的方法检查,确定此线将移动光标下移一行:
<Action type="0" message="2300" wParam="0" lParam="0" sParam="" />
的问题是仅在第一行执行整个宏并向下移动一行。但是之后的任何一条线都不会向下移动。
我刚刚试过你的宏,当我用这个文本处理时,它完美地工作:'SELECT a FROM b'(四行)。 Ctrl + Shift + E快捷键工作,并且“运行直到文件结束”模式也起作用。我正在使用NotePad ++ 6.8.1。你对这组文本有相同的结果吗? – Sam
在'SELECT a FROM b'超过4行(使用Run直到文件结尾)时,它停在第二行。只需使用快捷键即可停止在第二行。我正在使用版本6.9.2 我在想,是不是因为它试图在第2行自动完成“vbCrLf”这个词。因为它一直在弹出列表。 –
@Sam我发现了它。正如我刚才认为的自动完成。我按照这里的指示禁用了它:'http:// stackoverflow.com/questions/21263705/how-do-i-stop-notepad-from-showing-autocomplete-for-all-words-in-the-file'现在这个宏很完美。 –