none
java是否能调用ppt宏 RRS feed

答案

全部回复

  • 您好,

    据我所知,如果您是在Windows环境下开发,Java是可以直接调用PowerPoint中的宏的。您可以参考此链接 “PowerPoint API”。      

    同时您也可以参考这示例代码(代码是关于Excel的,PowerPoint类似):

    public class Excel {
        private static ActiveXComponent xl = null;
    
        public static Init() {
            try {
                ComThread.InitSTA();
                xl = ActiveXComponent.connectToActiveInstance("Excel.Application.14"); 
                // 14 is Office 2010, if you don't know what version you can do "Excel.Application"
                if (xl==null) {
                    // code to launch Excel if not running:
                    xl = new ActiveXComponent("Excel.Application");
                    Dispatch.put(xl, "Visible", Constants.kTrue);
                }
            }
            catch (Exception e) {
                ComThread.Release();            
            }
        }
    
        public static String Run(String vbName) {
            // Variant v = Dispatch.call(xl, "Run", vbName);    // using string name lookup
            Variant v = Dispatch.call(xl, 0x103, vbName);       // using COM offset
            // return Dispatch.get(this, "Name").getString();
            return v.getString();       
        }
    
        public static Variant Run1p(String vbName, Object param) {
            // Variant v = Dispatch.call(xl, "Run", vbName, param);
            return Dispatch.call(xl, 0x103, vbName, param);
            // return Dispatch.get(this, "Name").getString();
        }
    
        public static Worksheet GetActiveWorksheet () {
            // Dispatch d = xl.getProperty("ActiveSheet").toDispatch();
            Dispatch d = Dispatch.get(xl, 0x133).toDispatch ();
            return d; // you may want to put a wrapper around this...
        }
    }

    如果您有更多的问题,我建议您将问题发到JAVA论坛。(PS:此论坛不讨论开发问题。)

    谢谢。

    微软一站式示例脚本库: http://blogs.technet.com/b/onescript


    2015年9月22日 3:04
    版主
  • 你好 请问ppt的宏具体要怎么调用呢  这段代码会报错 请问有什么需要配置的么
    2015年9月23日 1:58
  • 您好,

    此论坛主要讨论Office产品的应用等问题,您的问题是关于Office/Java开发的。我们对此不是熟悉,所以我建议您将问题发到Java论坛或者MSND 论坛,以获得更好的帮助:

    https://social.msdn.microsoft.com/Forums/office/en-US/home?forum=officegeneral

    谢谢您的理解。

    微软一站式示例脚本库: http://blogs.technet.com/b/onescript

    2015年9月23日 7:51
    版主