我正在使用以下 vba 來簡單地單擊一個按鈕并打開一個命令提示符視窗,但是當我這樣做時,它會在 onenote 中而不是在本地打開它。為什么這是默認行為?我的印象是shell在本地打開它。
Private Sub CMD_PW2_Click()
Set oShell = CreateObject("Shell.Application")
oShell.ShellExecute "cmd.exe"
End Sub
上面的結果是它打開了從onenote指向的CMD,而不是本地C:\
uj5u.com熱心網友回復:
您不能只使用 /k 來處理更改位置的請求嗎?
oShell.ShellExecute "cmd.exe /k C:", vbNormalFocus
/k 開關指定 cmd 不應在 dir 完成后終止。您可以稍后終止 cmd
uj5u.com熱心網友回復:
或者您可以執行以下操作:
Private Sub CMD_PW2_Click()
ChDrive "C"
ChDir "C:\"
CreateObject("Shell.Application").ShellExecute "cmd.exe"
End Sub
uj5u.com熱心網友回復:
我想通了,我不得不將其更改為快捷方式。如果有人處理過這個問題,這就是我所做的:
Sub OpenFile()
Dim FileName As Variant
Dim FolderItem As Object
Dim FolderPath As Variant
Dim oFolder As Object
Dim oShell As Object
FolderPath = "C:\Documents and Settings\Admin.ADMINS\Desktop"
FileName = "Solitaire.lnk"
Set oShell = CreateObject("Shell.Application")
Set FolderItem = oShell.Namespace(FolderPath).ParseName(FileName)
FolderItem.Verbs.Item(0).DoIt
End Sub
這讓我可以定義我想要打開的確切命令提示符。我使用 Environ("UserName") 使其可在其他用戶的 PC 上使用,因為此快捷路徑是全域的,只是由用戶更改。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/456323.html
