Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从不同应用程序中的宏访问vba中特定于应用程序的常量?_Vba_Powerpoint - Fatal编程技术网

如何从不同应用程序中的宏访问vba中特定于应用程序的常量?

如何从不同应用程序中的宏访问vba中特定于应用程序的常量?,vba,powerpoint,Vba,Powerpoint,通常要求在一个MS Office应用程序中使用VBA在另一个MS Office应用程序中执行操作,例如,使用excel宏执行计算,然后在powerpoint中呈现表格 VBA为VBA中的常量提供了有用的别名,例如ppBorderRight=4。您可以通过引用常量名称在powerpoint VBA宏中设置表格样式,而无需跟踪哪个整数值对应于哪个整数值 这在powerpoint宏(pptm文件)中工作正常,但从excel(xlsm文件)调用时失败 如何从其他应用程序引用这些常量?我有一个excel

通常要求在一个MS Office应用程序中使用VBA在另一个MS Office应用程序中执行操作,例如,使用excel宏执行计算,然后在powerpoint中呈现表格

VBA为VBA中的常量提供了有用的别名,例如
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对象库)


通过在引用中添加应用程序。它添加了一个类型库。