在两个工作簿中运行相同的宏

在两个工作簿中运行相同的宏

我想在两个工作簿中运行相同的代码。该代码将数据标签放在 xy 散点图上。以下是代码:

Sub AttachLabelsToPoints()

   'Dimension variables.
   Dim Counter As Integer, ChartName As String, xVals As String

   ' Disable screen updating while the subroutine is run.
   Application.ScreenUpdating = False

   'Store the formula for the first series in "xVals".
   xVals = ActiveChart.SeriesCollection(1).Formula

   'Extract the range for the data from xVals.
   xVals = Mid(xVals, InStr(InStr(xVals, ","), xVals, _
      Mid(Left(xVals, InStr(xVals, "!") - 1), 9)))
   xVals = Left(xVals, InStr(InStr(xVals, "!"), xVals, ",") - 1)
   Do While Left(xVals, 1) = ","
      xVals = Mid(xVals, 2)
   Loop

   'Attach a label to each data point in the chart.
   For Counter = 1 To Range(xVals).Cells.Count
     ActiveChart.SeriesCollection(1).Points(Counter).HasDataLabel = _
         True
      ActiveChart.SeriesCollection(1).Points(Counter).DataLabel.Text = _
         Range(xVals).Cells(Counter, 1).Offset(0, -1).Value
   Next Counter

End Sub

有什么办法可以解决这个问题吗?

答案1

将此代码保存在 VSTO 插件(xla 或 xlax)中,并在任意数量的工作簿中添加对它的引用。请参阅以下内容了解 VSTO(Excel 插件):https://msdn.microsoft.com/en-us/library/cc668205.aspx

相关内容