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
Jquery Office 2013 vba日历mscomctl ocx_Jquery_Vba_Calendar_Ms Office_Ocx - Fatal编程技术网

Jquery Office 2013 vba日历mscomctl ocx

Jquery Office 2013 vba日历mscomctl ocx,jquery,vba,calendar,ms-office,ocx,Jquery,Vba,Calendar,Ms Office,Ocx,如果您使用新版本的Ms Office 2013(或更高版本),您可能会发现无法访问VBA应用程序的日历控件。 唯一的解决方案是手动(或通过安装程序)安装OCX,但如果您没有管理员权限,首先,如果您有多个客户端,则可能会出现问题。我建议一种简单的解决方法。 如果我没有弄错的话,我们都有一个共同的组成部分,那就是“网络浏览器”。 现在我将向您展示(迷你教程)如何替换日历组件 辅导的 转到vba编辑器(Alt+F11) 创建新的UserForm(您可以使用“calendarPicker”更改名称)

如果您使用新版本的Ms Office 2013(或更高版本),您可能会发现无法访问VBA应用程序的日历控件。
唯一的解决方案是手动(或通过安装程序)安装OCX,但如果您没有管理员权限,首先,如果您有多个客户端,则可能会出现问题。

我建议一种简单的解决方法。 如果我没有弄错的话,我们都有一个共同的组成部分,那就是“网络浏览器”。 现在我将向您展示(迷你教程)如何替换日历组件

辅导的
  • 转到vba编辑器(Alt+F11)
  • 创建新的UserForm(您可以使用“calendarPicker”更改名称)
  • 打开“工具箱”
  • 在“工具箱”上单击鼠标右键,然后在菜单中选择“额外组件”
  • 在列表中选择“Microsoft Web浏览器”,然后单击“确定”。现在,您在工具箱上找到了一个新图标。

  • 在Userform中拖放此新组件
  • 在Userform上添加命令按钮。
  • 打开“用户表单代码”窗口并放置以下代码:

    Dim objIE As SHDocVw.InternetExplorer Dim HTML As HTMLDocument Private Sub UserForm_Initialize() Set objIE = Me.WebBrowser1 WebBrowser1.Navigate ("http://YourWebSiteAddress/index.html") End Sub Private Sub ExtractDate() Set HTML = objIE.Document If Not HTML Is Nothing Then For Each elc In HTML.all.tags("input") mydate = elc.getAttribute("value") Next End If Me.Hide End Sub Private Sub cmdSelectDate_Click() Call ExtractDate End Sub Dim objIE作为SHDocVw.InternetExplorer 将HTML设置为HTMLDocument 私有子用户表单_初始化() 设置objIE=Me.WebBrowser1 WebBrowser1.导航(“http://YourWebSiteAddress/index.html") 端接头 私人分拆日期() Set HTML=objIE.Document 如果不是HTML,那就什么都不是了 对于HTML.all.tags(“输入”)中的每个elc mydate=elc.getAttribute(“值”) 下一个 如果结束 我,藏起来 端接头 私有子cmdSelectDate_Click() 通话日期 端接头
  • 之后,您需要使用此代码创建index.html文件

    <!doctype html> <html lang="en"> <head> <meta charset="utf-8"> <title>jQuery UI Datepicker</title> <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css"> <script src="//code.jquery.com/jquery-1.10.2.js"></script> <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script> <link rel="stylesheet" href="/resources/demos/style.css"> <script> $(function() { $( "#datepicker" ).datepicker(); }); </script> </head> <body> <div style="width: 80%;"> <input type="text" id="datepicker"> </div> </body> </html> jQueryUI日期选择器 $(函数(){ $(“#日期选择器”).datepicker(); });
  • 如果您有一个网站,请发布此页面(index.html),并使用vba代码中的网站更改此值“YourWebSiteAddress”:

    WebBrowser1.Navigate ("http://YourWebSiteAddress/index.html") WebBrowser1.导航(“http://YourWebSiteAddress/index.html")
您可以看到结果

单击输入框后,可以选择日期
最后要做的事情是共享module.vb中选择的值,从而调用者可以获得该值

就这些! 您可以放置任何Jquery组件