Excel w/vba PC 启动时程序未进入前台 Windows10 触摸屏

Excel w/vba Program not coming to foreground at PC start Windows10 touchscreen

我有一台带触摸屏但没有键盘或鼠标的 windows10 电脑。我有一个 excel 程序,我想在每次重新启动电脑时启动它。我使用 shell:startup 在文件夹中放置文件的快捷方式,系统将启动并打开文件,但它在后台。我可以从平板电脑菜单中单击它并打开它,但我希望它自己出现在前台。我做了一些测试并将完全相同的文件设置到非触摸屏笔记本电脑中,文件打开完美。这是文件中简单 vba 代码 运行 的示例,以及一些我试图使其出现在前台的代码。

private Sub Workbook_Open()

    Application.Caption = "Test System"

    Application.Wait (Now + 0.0001)

    'SendKeys "%{Tab}", True

    'ActiveWindow.Visible = True

    MsgBox "System Restarting", vbcritcal + vbSystemModal

End Sub

我试图让程序出现在前台的两个注释行但它们没有帮助,我一次尝试了一个。

AppActivate 会像这样为您完成工作:

AppActivate ThisWorkbook.Windows(1).Caption

您说这是在重启后立即发生的,所以 ThisWorkbook.Windows 中应该只有 1 个成员。或者,您可以将 window 的名称赋予命令,如下所示:

AppActivate "Book1 - Excel".

Private Sub Workbook_Open()
restartct = Sheets("search").Cells(1, 13)
If GetTickCount < 80000 Then
  restartct = restartct + 1
  Application.Wait (Now + 0.0001)
  Application.WindowState = xlMaximized
  frmBadinput.Label1 = "System Restarting"
  SendKeys "%{tab}"
  mdelay = 2
  frmBadinput.Show
End If
frmWelcome.Show
 Sheets("Search").Activate
 ActiveSheet.Cells(1, 13).Value = restartct
 ActiveSheet.Cells(5, 1).Select
 ActiveWindow.Zoom = 120
End Sub

宏#1 Option Explicit Public Declare Function GetTickCount& Lib "kernel32" ()

我还使用了一些表格和一些其他变量来跟踪 PC 系统重启