【问题标题】:VBA start stop Onedrive Sync clientVBA 启动停止 Onedrive Sync 客户端
【发布时间】:2021-06-23 12:25:32
【问题描述】:

需要:通过 VBA 启动或停止 Onedrive 同步客户端

原因:运行循环文件并进行一些更改的过程导致 Excel 在 Onedrive 同步客户端运行时崩溃

【问题讨论】:

    标签: excel vba onedrive


    【解决方案1】:

    找不到更“优雅”的方法,但它确实有效

    如果您使用的是 32 位版本,请调整 program files folder

    ' Credits: https://stackoverflow.com/questions/49652606/wscript-shell-to-run-a-script-with-spaces-in-path-and-arguments-from-vba
    Private Sub ManageOnedriveSync(ByVal action As Integer)
    
        Dim shell As Object
        Set shell = VBA.CreateObject("WScript.Shell")
        Dim waitTillComplete As Boolean: waitTillComplete = False
        Dim style As Integer: style = 1
        Dim errorcode As Integer
        Dim path As String
        
        Dim commandAction As String
        Select Case action
        Case 1
            commandAction = "/shutdown"
        End Select
    
        path = Chr(34) & "%programfiles%\Microsoft OneDrive\Onedrive.exe" & Chr(34) & " " & commandAction
    
        errorcode = shell.Run(path, style, waitTillComplete)
    
    End Sub
    

    关机:

    ManageOnedriveSync 1
    

    开始:

    ManageOnedriveSync 0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-06
      • 1970-01-01
      • 1970-01-01
      • 2016-03-23
      • 2017-07-04
      相关资源
      最近更新 更多