首页 > 解决方案 > Sendkeys 不保留格式(双空格)

问题描述

我使用带有列表框的用户表单来帮助过滤在线员工列表。

VBA 代码首先显示它要过滤掉的名称,然后我单击一个按钮,代码等待五秒钟让我单击网页过滤器搜索框。
然后代码循环名称并使用 sendkeys 过滤掉我需要的名称。

Private Sub CommandButton3_Click()
    Application.Wait (Now + TimeValue("0:00:05"))
    For i = 0 To lbnorm.ListCount - 1
        Debug.Print lbnorm.List(i, 1)            ' Foo  Bar
        Application.SendKeys (lbnorm.List(i, 1)) ' Foo Bar
        Application.SendKeys ("{TAB}")
        Sleep 200
    Next i
    SendKeys "{NUMLOCK}", True
End Sub

该代码工作正常,除了一个人。
让我们称这个人为 Foo Bar。问题是在网页上写Foo名字的人不小心添加了另一个空格Foo Bar

使用即时窗口上方的代码显示Foo Bar,但是当我将密钥发送到记事本时,它会写入Foo Bar.
我该怎么做才能让 Foo Bar 使用 sendkeys 过滤?

编辑:
我刚刚尝试了这段代码,由于某种原因,它工作正常。

Sub t()
    b = "aaa  aaa   bbbb"
    Application.Wait (Now + TimeValue("0:00:05"))
    Debug.Print b
    Application.SendKeys (b)

End Sub

标签: excelvbasendkeys

解决方案


推荐阅读