propertyvalue="product.remark"/>"
endsub
如何获取变量值
定义一个全局变量在VBS中将OWC的值赋给该变量,通过脚本间的调用,将值传递
subIsDate()
showstr=spreadsheet1.ActiveSheet.Cells(2,8).value//赋值
Endsub
varshowstr;//定义全局变量
functionsave(){
varsst;
IsDate_VBS=IsDate();
sst=showstr
showstr1.value=sst;//赋值
alert(showstr1.value);
varcontractForm=document.forms[0];
contractForm.target="_self";
contractForm.submit();
}
页面代码
后台通过request获取
OWC属性值设置
将数据输入组件
之前我已经讲述了多个将数据输入组件的技巧。
我现在将更详细的描述编程模型中的这些技巧。
表2-1列出了与装载数据相关的属性和方法,所有这些属性和方法都通过电子表格对象的接口公布。
表2-1.装载数据相关的属性和方法。
属性或方法
描述
Spreadsheet.DataType
字符串类型的属性,告诉电子表格组件在多个用于装载数据的属性被设置时,应该使用哪个属性来装载数据,您赋给这个属性的值就是您应该用来装载数据的那个属性的名称――例如,将这个属性设置位HTMLURL,会使组件装载从属性HTMLURL中的URL处获得的数据。
Spreadsheet.HTMLData
字符串类型的属性,可用来获得或设置HTML表格格式的电子表格内容。
这种格式也包含了额外的属性和XML标签,这些属性和标签是用来保留重建电子表格模型所必须的信息(例如一个单元公式)的,不过它们不属于HTML3.2的表格格式。
您可以将这个属性设置为包含了一个HTML表格的一个字符串,或者在需要保存时通过读取该属性值来获得电子表格完整的内容。
Spreadsheet.HTMLURL
字符串类型的属性,包含了一个URL,可以从这个URL处装载电子表格的数据。
这个URL必须返回一个包含了表格的HTML文档。
使用Excel2000中来保存为HTML格式的电子表格可以使用这个属性来装载,这个属性也可以是一个从数据库中实时生成表格的ASP页面或CGI程序。
Spreadsheet.CSVData
字符串类型的属性,和属性HTMLData类似,不过它接受和返回的数据的格式是CSV。
当需要从不能发布HTML格式的老系统中装载数据时这个属性很有用。
Spreadsheet.CSVURL
字符串类型的属性,和属性HTMLURL类似,不过它希望从URL处获得的数据格式是CSV格式的。
就象HTMLURL属性一样,这个URL可以是一个从数据库中实时生成表格的ASP页面或CGI程序。
Spreadsheet.LoadText
可以将一个被分隔的文本文件载入电子表格的方法。
与CSV格式不同的是,这个文本文件可以使用任何字段分隔符。
Range对象也可使用LoadText方法和它的兄弟方法ParseText,来将文本载入电子表格的一个指定的区域中。
LoadText方法可以指向一个您本地文件系统中的文件或指向一个URL。
使用区域
电子表格组件中最常使用的编程接口是Range对象。
很多方法都返回Range对象,当需要对一个区域的各单元进行修改,格式化,排序和设置自动筛选时,都会用到Range对象。
表2-2显示了在你建立电子表格组件的解决方案时应该了解的Range对象的属性和方法。
表2-2.Range对象主要的属性和方法。
属性或方法
介绍
Spreadsheet.Range
该方法接受一个区域引用(例如A1:
B2或A:
B),返回一个Range对象。
因为一个区域可以只有一个单元,因此您也可以传入单个单元的引用(例如A1)。
该方法也可以接受两个不同的单元引用,而返回一个含盖这两个单元的区域。
Range.Address
该属性返回一个区域的地址(例如,A1:
B2)。
Range.Cells
当我首次看到这个函数时,我非常迷惑,因为它被定义为返回另一个Range对象。
不过,您可以将该属性当作多个单元的一个集合,也就是说您可以使用ForEach循环访问其中的每一个单元。
该属性也可以以二维数组的形式来访问。
例如,MyRange.Cells(1,3).Value会返回区域中行1,列3的值。
电子表格和工作表对象也有Cells属性,因此您可以使用它代替前面提到的Range方法来访问指定单元。
Range.Column,Range.Row
这些属性指出区域中首行和首列的编号。
当您在一个区域的行和列中进行迭代时,如果需要知道当前位于哪行哪列,这个属性非常有用。
Range.Columns,Range.Rows
虽然在名称上和前两个属性非常相似,但是这对属性返回的是Range对象包含的行或者列的集合。
Range.Columns.Count和Range.Rows.Count可以告诉你当前区域中行和列的数目。
Range.HTMLData
该属性和Spreadsheet.HTMLData属性相似,不过Range对象的这个属性是只读的。
使用它可以快速获得一个给定区域中数据的HTML表格的表现形式。
Range.Value
该属性获得或设置区域的值。
虽然帮助文件说在区域由多个单元构成时Range.Value会返回一个二维变量数组,但实际上当前版本中这是没有实现的。
不过,Range.Value可以接受一个二维数组的变量,来将数据输入区域中,当你需要使用文字值设置一个或多个单元值,或者是需要获得一个单元的无格式的值时,可以使用这个属性。
(译者注:
无格式的值指没有经过格式化的值。
)
Range.Formula
该属性读写一个单元的公式字符串。
当您需要获得或设置区域中一个或多个单元的公式时可以使用这个属性,记住在公式的开始使用等号(=)。
Range.Text
Range.Text属性返回Range.Value属性的格式化版本。
当您需要在消息框或另一个用户界面元素中显示格式化的值时这个属性很有用,该属性值就是您在添加AutoFilter对象的过滤条件时传入的值。
(译者注:
也就是说,过滤是根据一个单元格的表面值进行过滤的)
格式化
在将数据载入电子表格后,您可能需要通过编程来控制格式化。
每个单元都有自己的字体,对齐方式,边框,颜色和数字格式属性,所有这些特征都可以使用表2-3中的属性来设置。
表2-3.用于格式化的属性。
属性
描述
Range.NumberFormat
字符串类型的属性,控制单元中数字的格式。
您可以引用现有的格式名称来使用众多的内置格式(例如Currency)。
也可以创建自定义格式(例如,#,###,使1000显示为1,000)。
Range.Font
返回一个许多组件都能使用的常用的Font对象。
Range.Font允许设置Font对象的的多个属性,例如Name,Size,Bold,Italic,Color和Underline。
请注意,如果需要,可以在Font.Color属性中使用IE的颜色名。
Range.Halignment,Range.Valignment
这两个属性控制区域的各单元水平和垂直方向上的文本对齐方式。
每个属性中定义了各自可以使用的对齐方式的枚举值。
Range.Borders
该属性返回一个Borders对象,可以通过它来设置每个单元边框的各个特性,