分享
 
 
 

iWebOffice2004调用VBA脚本解释及翻译

王朝vb·作者佚名  2006-12-16
窄屏简体版  字體: |||超大  

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;c

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

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有