【问题标题】:excel macro calling another excel macro in vbaexcel宏在vba中调用另一个excel宏
【发布时间】:2013-02-13 19:38:39
【问题描述】:

我创建了一个宏来调用保存在我共享云端硬盘上的另一个宏。我从我问的上一个问题中给出的建议中得到了帮助。它正在处理我本地驱动器上的文件,但是一旦我从共享驱动器中的文件打开它,它就会停止工作。

宏名称是mymacro.xla

这些是代码:

Dim i As AddIn

Set i = Application.AddIns.Add("M:\nit\USER\nitin kumar\NQK\macro\run1.2.xla", True)

i.Installed = True

我创建了一个按钮,其代码如下:

Dim CoBa As CommandBar
Dim Ctlconst As CommandBarControl
On Error Resume Next

Set CoBa = Application.CommandBars.Add(Name:="Quote Daily Report", temporary:=True)

With CoBa
    Set Ctlconst = .Controls.Add(Type:=msoControlButton)

    With Ctlconst
        .Caption = "Lexington Macro"
        .Style = msoButtonIconAndCaptionBelow
        .OnAction = "Accounts_Summary"
        .FaceId = 483
        .TooltipText = "NITIN"
    End With
    .Visible = True
    .Position = msoBarBottom
End With

它不起作用任何建议都会有很大帮助。

【问题讨论】:

  • 可能文件被其他用户打开? Excel 以出色的方式锁定文件。另外:路径是像 server:// 这样的 UNC 路径吗?如果是这样,也许 Excel 拒绝打开 CMD 路径? CMD 是这样做的,所以这就是我的猜测。

标签: vba excel excel-2007


【解决方案1】:

最省力的解决方案是在添加之前将 XLA 复制到本地。

根本原因可能是多种因素之一,锁定、只读文件夹或安全限制。最好不要搞砸这件事,这也会让您解决一系列潜在问题,例如:- 如果您在有人使用 xla 时更新 xla 会发生什么?

【讨论】:

  • 先生,当 .xal 文件在本地驱动器上运行时,它会覆盖 addins 文件夹并将其添加到 microsoft 文件夹中,而当它在共享驱动器上运行时,它不会在相同的驱动器上运行。在本地驱动器上工作时,它工作正常,但在共享文件上却不行。
  • 我知道它在共享驱动器上不起作用,这是您的问题 - 那么 在本地复制 XLA 的哪一部分是您遇到的问题?
  • 将它复制到本地驱动器上已经完成了 microsoft 文件夹实际上在本地驱动器上,我将它们称为插件,并且在应用程序文件夹下我添加了它们,但文件在共享驱动器,它无法在它们上运行我必须处理许多文件并将它们全部复制到.
  • 而不是复制到插件文件夹(通常不建议这样做)将其复制到另一个文件夹,例如使用文件复制命令之一在用户配置文件中,并在您执行 @987654321 时添加@调用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多