如何从不同应用程序中的宏访问vba中特定于应用程序的常量?
通常要求在一个MS Office应用程序中使用VBA在另一个MS Office应用程序中执行操作,例如,使用excel宏执行计算,然后在powerpoint中呈现表格 VBA为VBA中的常量提供了有用的别名,例如如何从不同应用程序中的宏访问vba中特定于应用程序的常量?,vba,powerpoint,Vba,Powerpoint,通常要求在一个MS Office应用程序中使用VBA在另一个MS Office应用程序中执行操作,例如,使用excel宏执行计算,然后在powerpoint中呈现表格 VBA为VBA中的常量提供了有用的别名,例如ppBorderRight=4。您可以通过引用常量名称在powerpoint VBA宏中设置表格样式,而无需跟踪哪个整数值对应于哪个整数值 这在powerpoint宏(pptm文件)中工作正常,但从excel(xlsm文件)调用时失败 如何从其他应用程序引用这些常量?我有一个excel
ppBorderRight
=4。您可以通过引用常量名称在powerpoint VBA宏中设置表格样式,而无需跟踪哪个整数值对应于哪个整数值
这在powerpoint宏(pptm文件)中工作正常,但从excel(xlsm文件)调用时失败
如何从其他应用程序引用这些常量?我有一个excel VBA宏,它使用Set pp=CreateObject(“PowerPoint.application”)
我在excel宏中尝试了以下方法:
Set pp = CreateObject("PowerPoint.Application")
Set activeSlide = pp.ActivePresentation.Slides(pp.ActivePresentation.Slides.Count)
Set myTable = activeSlide.Shapes.AddTable(8, 2, , , 600, 500).Table
myTable.Columns(4).Cells.Borders(ppBorderRight).Weight = 0 'ppBorderRight evaluates to Empty
myTable.Columns(4).Cells.Borders(pp.ppBorderRight).Weight = 0 'Error: Application object has no property 'ppBorderRight'
完成此任务的正确方法是什么?谢谢@Mark的回答 答案是转到vba应用程序中的工具->引用(
Excel
,在我的例子中),并添加对目标应用程序对象库的引用(Microsoft PowerPoint 16.0对象库)
通过在引用中添加应用程序。它添加了一个类型库。