转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 软件开发 >> VB.NET程序 >> 正文
iWebOffice2004调用VBA脚本解释及翻译         ★★★★

iWebOffice2004调用VBA脚本解释及翻译

作者:闵涛 文章来源:闵涛的学习笔记 点击数:4301 更新时间:2009/4/23 18:59:01

iWebOffice2004 是一个实现痕迹保留、手写签名、电子印章的插件,已经被100多个

单位使用,将其调用部分Office VBA代码整理如下:

来自 http://www.goldgrid.com

<script language=javascript>
//系统变量
var vFileName=""; //打开的文件名
var vObject=null; //打开的对象
var gFileName=""; //文件名
var gObject=null; //对象
var gOpened=false; //是否被打开
var gUserName=""; //系统用户
</script>


<script language="JScript" for=WebOffice event="OnDocumentOpened(vFileName,vObject)">
 OnDocumentOpened(vFileName,vObject); //打开文件事件
</script>

<script language="JScript" for=WebOffice event="OnDocumentClosed()">
 OnDocumentClosed();   //关闭文件事件
</script>

<script language=javascript>
//打开文档,根据用户权限(EditType),进行初始化设置
function OnDocumentOpened(vFileName,vObject) 
{
  var mProtect,mTools,mTrack,mPrint,mShow;
  gFileName=vFileName;    //取得全局文件名
  gObject=vObject;    //取得全局对象
  //设置痕迹和保护状态
  if (webform.WebOffice.EditType=="0"){
 mProtect=true;
 mTools=false;
 mTrack=false;
 mPrint=false;
 mShow=true;
  }else if(webform.WebOffice.EditType=="1"){
 mProtect=false;
 mTools=false;
 mTrack=false;
 mPrint=false;
 mShow=false;  
  }else if(webform.WebOffice.EditType=="2"){
 mProtect=false;
 mTools=false;
 mTrack=true;
 mPrint=true;
 mShow=true;
  }else if(webform.WebOffice.EditType=="3"){
 mProtect=false;
 mTools=true;
 mTrack=true;
 mPrint=true;
 mShow=true;
  }else{
 var mType="";
 var mEdit=webform.WebOffice.EditType;
 var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);

 mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mProtect=true;
     if (mType=="0") mProtect=false;
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);

 var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mShow=true;
     if (mType=="0") mShow=false;
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);

 var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mTrack=true;
     if (mType=="0") mTrack=false;
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);  

    var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mPrint=true;
     if (mType=="0") mPrint=false;
 }
 mEdit=mEdit.substring(mIdx+1,mEdit.length);  
 
    var mIdx=mEdit.indexOf(",");
 if (mIdx>0){
     mType=mEdit.substring(0,mIdx);
     if (mType=="1") mTools=true;
     if (mType=="0") mTools=false;
 }
 
  }

  if (webform.WebOffice.FileType==".doc"){
   gObject.TrackRevisions=mTrack;
  gObject.PrintRevisions=mPrint;
   gObject.ShowRevisions=mShow;

   gObject.CommandBars(''''Reviewing'''').Enabled =mTools;
   gObject.CommandBars(''''Reviewing'''').Visible =mTools;

   var mCount=gObject.CommandBars(''''Track Changes'''').Controls.Count;
         for (var mIndex = 1; mIndex<= mCount; mIndex++){
           var mCurID=gObject.CommandBars(''''Track Changes'''').Controls(mIndex).ID;
           if ((mCurID==1715) || (mCurID==1716) || (mCurID==2041) || (mCurID==305)) {
              gObject.CommandBars(''''Track Changes'''').Controls(mIndex).Enabled = mTools;
           }
         }
 if (mProtect){
    gObject.Protect(2);
 }
 if (gUserName == "") {
          //保存原来的用户
          gUserName=gObject.Application.UserName;
          //设置系统当前用户
          gObject.Application.UserName=webform.WebOffice.UserName;
 }
  }


  if (webform.WebOffice.FileType==".xls"){
 if (mShow){
          if (mTrack){
              gObject.Application.DisplayCommentIndicator = 1;
   }
 }else{
          gObject.Application.DisplayCommentIndicator = 0;
 }

   gObject.CommandBars(''''Reviewing'''').Enabled =mTools;
   gObject.CommandBars(''''Reviewing'''').Visible =mTools;

  if (mProtect){
            for (var mIndex=1;mIndex<=gObject.Application.ActiveWorkbook.Sheets.Count;mIndex++){
                var mSheet=gObject.Application.ActiveWorkbook.Sheets(mIndex);
                mSheet.Protect("", true, true, true);
            }
 }

 if (gUserName == "") {
          //保存原来的用户
          gUserName=gObject.Application.UserName;
          //设置系统当前用户
          gObject.Application.UserName=webform.WebOffice.UserName;
 }
  }
  //打开成功
  gOpened = true;  
}

function OnDocumentClosed()
{
  //关闭成功
  gOpened = false;
}

//显示系统状态信息
function StatusMsg(mString){
  StatusBar.innerText=mString;
}

//页面装入事件
function Load(){
  //给控件属性付值
  try{
  webform.WebOffice.WebUrl="<%=mServerUrl%>";
  webform.WebOffice.RecordID="<%=mRecordID%>";
  webform.WebOffice.Template="<%=mTemplate%>";
  webform.WebOffice.FileName="<%=mFileName%>";
  webform.WebOffice.FileType="<%=mFileType%>";
  webform.WebOffice.EditType="<%=mEditType%>";
  webform.WebOffice.UserName="<%=mUserName%>";
  //打开文档,执行发送LOADFILE操作
  webform.WebOffice.WebOpen();
  if (webform.WebOffice.Error!=""){
 //如果不成功,执行发送LOADTEMPLATE操作
 webform.WebOffice.WebLoadTemplate();
 if (webform.WebOffice.Error!=""){
  //如果还没有成功,则根据扩展名创建新文档
  if (webform.WebOffice.FileType==".doc"){
   webform.WebOffice.CreateNew("Word.Document");
  }else if(webform.WebOffice.FileType==".xls"){
   webform.WebOffice.CreateNew("Excel.Sheet");
  }else if(webform.WebOffice.FileType==".ppt"){
   webform.WebOffice.CreateNew("PowerPoint.Show");
  }else{
   webform.WebOffice.CreateNew("");
  }
 }
  }
  }catch(e){
  }
  //显示状态信息
  StatusMsg(webform.WebOffice.Status);
}

//页面退出事件
function UnLoad(){
  try{
     //关闭OCX控件
     webform.WebOffice.WebClose();
  }catch(e){}
}

//设置是否显示痕迹
function ShowRevision(vValue){
  var object=webform.WebOffice.ActiveDocument;
   object.ShowRevisions=vValue;
  if (vValue){
     StatusMsg("显示痕迹...");
  }else{
     StatusMsg("隐藏痕迹...");
  }
}

//调入文档
function LoadDocument(){
  StatusMsg("正在打开文档...");
  webform.WebOffice.WebOpen();
  StatusMsg(webform.WebOffice.Status);
}

//保存文档
function SaveDocument(){
  //判断状态
  if (webform.EditType.value=="0"){
     alert("你在查看状态,不能保存!");
     return false;
  }
  //保存文档
  webform.WebOffice.WebSave();
  //如果没有错误
  if (webform.WebOffice.Error!=""){
     StatusMsg(webform.WebOffice.Status);
     return false;
  }else{
     StatusMsg(webform.WebOffice.Status);
     return true;
  }
}

//打开版本信息
function WebOpenVersion(){
  var mDialogUrl = "Version/VersionList.asp?RecordID="+webform.WebOffice.RecordID;
  var mObject = new Object();
      mObject.FileID = "";
      mObject.Result = false;
      window.showModalDialog(mDialogUrl, mObject, "dialogHeight:280px; dialogWidth:420px;center:yes;scroll:no;status:no;");
&nbs

[1] [2] [3] [4] [5] [6] [7]  下一页


[VB.NET程序]VBA (2)常数  [VB.NET程序]VBA (1)常数
[VB.NET程序]转贴(电脑报):VBA开发实用指南  [Access]ACCESS入门教程(十六)模块与“VBA”语言
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · C语言系列  · VB.NET程序
    · JAVA开发  · Delphi程序
    · 脚本语言
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台