运行时错误424在Excelmacros

我是新来的macros,我正在创build一个macros,它需要格式化单元格,也为列A生成条形码。创build一个函数Code128()将string转换为条形码在博客中给出它工作正常。

在这里输入图像说明

我在下面创build的macros中使用它们

With ActiveSheet.PageSetup .PrintTitleRows = "$1:$1" .PrintGridlines = True .Orientation = xlLandscape .PaperSize = xlPaperA4 .Zoom = False .FitToPagesWide = 1 .FitToPagesTall = False End With Columns("A").ColumnWidth = 10 For Each Target In Range("A1", Range("A" & Rows.Count).End(xlUp)) If Target.Value <> vbNullString Then Target.Value = PERSONAL.XLSB!Code128(Target.Value) Target.Resize(, 12).WrapText = True Target.Font = "Code 128" End If Next Next 

但是,当我在Excel上运行macros,我得到的运行时错误

在这里输入图像说明

在这里输入图像说明

您应该能够使用Application.Run评估另一个工作簿中存在的函数。 格式是:

 Target.Value = Application.Run("PERSONAL.XLSB!Module2.Code128", Target.Value) 

或者更一般地说:

 = Application.Run(workbookname$ & "!" & modulename & "." & functionname, args()) 

除此之外,您可以在Book1中添加对Personal.xlb的引用 。