Application对象

Application对象
Application对象

这个是MSDN上的文章,内容是介绍怎样对Excel2007的Application对象的成员进行编程,但是实际内容也适用于Excel2003或之前的版本。

概述

Application对象是Microsoft Office Excel 2007对象模型中最高级别的对象,表示Excel程序自身。Application对象提供正在运行的程序的信息、应用于程序实例的选项以及实例中打开的当前对象。因为它是对象模型中最高的对象,Application对象也包含组成一个工作簿的很多部件,包括如工作簿、工作表集合、单元格以及这些对象所包含的数据等。

Application对象包括:

?程序范围的设置和选项。这些选项大部分同“工具”菜单下的“选项”对话框里的内容相同。

?顶级对象返回的方法,如ActiveCell、ActiveSheet等。

在下面几节里,你将通过使用VBA代码示例学习到一些Application对象中经常使用到的对象、方法和属性。关于Application对象模型所有成员的详细资料,请参考Application对象成员。

Application对象中其它对象的引用方法

你可以使用Application属性返回Application对象。获取一个Application对象后,如需访问它下面的对象,可以在对象模型层级中往下移动。下面示例设置一个工作表的第一个单元格内容为20。

Application.Workbooks(1).Worksheets(1).Cells(1,1)=20

要表示一个单元格,上面的代码示例从Application对象开始,移到第一个工作簿,再移到第一个工作表,最后到这个单元格。

下面示例在另一个Excel程序中创建一个Excel工作簿对象,然后打开一个工作簿。

Set xl=CreateObject("Excel.Sheet")

xl.Application.Workbooks.Open "newbook.xls"

不需要使用“Application”限定词,很多的属性和方法也可以直接被用来返回那些最常用的用户界面对象,如活动工作表 (ActiveSheet属性)。例如,除了使用https://www.360docs.net/doc/07918820.html, = “Monthly Sales”,你也可以使用https://www.360docs.net/doc/07918820.html, = “Monthly Sales”。然而,当使用这个简便表示方法时必需小心,需要选择正确的对象。例如通过使用Worksheet对象的Activate方确定你选择了正确的工作簿和工作表后,你可以使用Cell(1,1)表示第一个单元格。

有几种情况你必需使用Application限定词。例如,OnTime对象(本文后面部分将讨论)需要这个限定词,还有程序窗口的Width和 Height属性。一般来说,用来处理Excel窗口的外观或影响程序全局行为的属性或方法需要使用Application限定词;例如, DisplayFormlaBar属性用来显示或隐藏公式栏,Calculation方法也需要限定词。

Application对象集合

这一节详细介绍一些和Application对象相关的集合。

AddIns集合

AddIns集合表示所有当前加载的Excel Add-in。你可以像枚举其它对象一样在你的程序中列举出关于add-in的不同类型信息。下面的示例列举出当前加载到Excel中的Add-in的路径和名称。

Sub ListAddIns()

Dim myAddin As AddIn

For

Each myAddin In AddIns

MsgBox myAddin.FullName

Next

End

Sub

Columns和Rows集合

这两个集合表示活动工作簿中的列和行。分别使用它们选择指定的列和行。

Application.Columns(4).Select

这个语句选择D列,就像你通过点击用户界面中的列的顶部一样。

Application.Rows(5).Select

这个语句选择工作表中的第5行,就像你点击行的左边框一样。

Dialogs集合

Dialogs集合包括Excel程序中所有的对话框。将在本文中后面部分更详细地讨论Dialogs集合。

Sheets集合

Sheets集合返回指定或活动工作簿中所有工作表的集合。Sheets集合可以包含Chart或Worksheet对象。

下面示例打印出活动工作簿中所有的工作表。

Application.Sheets.PrintOut

这个示例循环工作簿中所有的工作表并打印出包含数据区域的任何工作表。

For iSheet = 1 To Application.Sheets.Count

If

Not IsEmpty(Application.Sheets(iSheet).UsedRange) Then

Application.Sheets(iSheet).PrintOut copies:=1

End

If

Next iSheet

Application对象的属性

有很多的属性可以用来访问Excel 2007程序的各种对象,多得不能记住或在这里全部讨论。幸运的是只有一部分是你可能经常使用的。

?ActiveCell

?ActiveChart

?ActiveSheet

?ActiveWindow

?ActiveWorkbook

?RangeSelection

?Selection

?StatusBar

ThisWorkbook

下面的内容演示这些常用属性的使用方法。

ActiveCell属性

Application对象的ActiveCell属性返回一个表示活动工作簿中活动工作表的活动单元格的Range对象。如果你没有指定对象限定词,这个属性返回活动窗口的活动单元格。

注意区别活动单元格和选择的单元格。活动单元格是当前选择中的一个单元格。选择(Selection)可能包括一个单元格集合,但只有其中一个是活动单元格。

下面的示例改变活动单元格的字体格式。注意为了确保你操作正确的单元格,工作表集合的Activate方法让Sheet1成为活动工作表。

Worksheets("Sheet1").Activate

With ActiveCell.Font

.Bold = True

.Italic = True

End

With

ActiveChart属性

ActiveChart属性返回表示活动图表的Chart对象,不管它是嵌入的图表还是图表工作表。在一个嵌入的图表被选择或激活时,它就是活动图表。下面的示例使用ActiveChart属性添加一个3维柱形图到月销售记录工作表中。

Sub AddChart()

Charts.Add

With ActiveChart

.ChartType = xl3DColumn

.SetSourceData Source:=Sheets("Sheet1").Range("B3:H15")

.Location Where:=xlLocationAsObject, Name:="Monthly Sales"

.HasTitle = True

.ChartTitle.Characters.Text = Monthly Sales by Category

End

With

End

Sub

ActiveSheet属性

ActiveSheet属性返回一个表示当前选中的工作表(顶部工作表)的Worksheet对象。在一个工作簿中只有一个工作表能成为活动工作表。下面的示例显示活动工作表的名称。

MsgBox "The name of the active sheet is " & https://www.360docs.net/doc/07918820.html,

下面的示例将活动工作表复制用户指定的次数并放置在Sheet1之前。

Sub CopyActiveSheet()

Dim x As

Integer

x = InputBox("Enter number of times to copy active sheet")

For numtimes = 1 To x

' Put copies in front of Sheet1.

ActiveWorkbook.ActiveSheet.Copy _

Before:=ActiveWorkbook.Sheets("Sheet1")

Next

End

Sub

ActiveWindow属性

ActiveWindow属性返回一个表示活动窗口(顶部窗口)的Window对象。下面的示例显示活动窗口的名称(Caption属性)。

MsgBox "The name of the active window is " & ActiveWindow.Caption

Caption属性作为活动窗口的名称允许你通过使用友好的名称而不是序号来获得窗口。

下面的示例选择并打印一个工作表,然后对第二个工作表重复此过程。

Sub PrintWorksheet()

Application.ScreenUpdating = False

Sheets("Sales").Select

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

Sheets("Expenses").Select

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True

End

Sub

在这个例子中,你可能疑惑为什么设置ScreenUpdating属性为False。当Excel执行一系列任务时,屏幕被更新并刷新很多次,这将导致屏幕闪烁。设置ScreenUpdating属性为False可以消除闪烁。另外,因为电脑处理器不需要暂停来刷新屏幕,这样也可以让大型程序运行得较快一点。

ActiveWorkbook属性

ActiveWorkbook属性返回一个表示活动窗口(顶部窗口)中的工作簿的Workbook对象。这个示例显示活动工作簿的名称。

MsgBox "The name of the active workbook is " & https://www.360docs.net/doc/07918820.html,

下面示例设置计算模式为手动(这样其它工作簿将不计算),然后循环并计算活动工作簿的每个工作表。

Sub CalcBook()

Dim wks As Worksheet

Application.Calculation = xlManual

For

Each wks In ActiveWorkbook.Worksheets

wks.Calculate

Next

Set wks = Nothing

End

Sub

RangeSelection属性

RangeSelection属性返回一个表示指定窗口中工作表里选择的单元格的Range对象,即使在工作表中一个图表对象已经被选择或激活。这个示例显示活动窗口中工作表所选择单元格的地址。

MsgBox Application.ActiveWindow.RangeSelection.Address

当你选择了一个范围,RangeSelection属性和Selection对象表示同样一个范围。当你选择一个图表,RangeSelection属性返回之前选择的范围。Selection属性将在下一节中详细介绍。

这里介绍的语法https://www.360docs.net/doc/07918820.html,在Office2003和2007中使用时都出现错误,如果该代码生效,必须先设置单元格A1的名称。并且应该不是单元格内容的前三个字符,而是名称的前三个字符。这应该是原文的疏漏。

下面的示例显示一个单元格中的前三个字符。

Range("A1").Select

MsgBox Left(https://www.360docs.net/doc/07918820.html,, 3)

你可能奇怪为什么使用这样的语法

https://www.360docs.net/doc/07918820.html,

当你选择一个范围,使用https://www.360docs.net/doc/07918820.html,方法可以获取像Sheet1!$A$1:$B$15这样的范围地址。另外,使用https://www.360docs.net/doc/07918820.html,方法可以获取命名像MyRange1这样的范围本身的名称。

Selection属性

Selection属性返回活动窗口中被选择的对象。例如,对于单元格,这个属性返回Range对象;对于图表,它返回Chart对象。如果使用属性而没有对象限定符,等于使用Application.Selection。

这个示例清除Sheet1所选的内容。

Worksheets("Sheet1").Activate Selection.Clear

下面的例子将所选范围的总行数保存到变量NumRows。

NumRows = 0

For

Each area In Selection.Areas

NumRows = NumRows + area.Rows.Count

Next area

这个例子统计所选单元格的总数并在消息框中显示结果。

Sub Count_Selection()

Dim cell As

Object

Dim count As

Integer

count = 0

For

Each cell In Selection

count = count + 1

Next cell

MsgBox count & " item(s) selected"

End

Sub

StatusBar属性

StatusBar属性返回或设置状态栏的文本。这个属性允许你更改在Excel窗口底部的状态栏中显示的信息。它对在运算过程需要较长时间来完成时让用户知道正在运行的进度非常有帮助。

如果Excel控制状态栏时StatusBar属性返回False。另外,如需恢复默认状态栏文本,只需设置属性值为False即可;甚至在状态栏隐藏时也有效。

例如,使用下面的方式对每个处理的文件你可以给StatusBar属性赋值。

Dim FileNum As

Integer

FileNum = 0

For

Each file in Files

' Do something here.

Application.StatusBar = "Now processing File " & FileNum

FileNum = FileNum + 1

Next

然后当过程结束,你需要使用下面的语句将状态栏设置回正常状态。

Application.StatusBar = False

你可以创建你自己的过程使用StatusBar属性显示一个宏或其它过程的进度。

Sub ShowStatusBarProgress()

Dim i As

Long

Dim pctDone As

Double

Dim numSquares As

Long

Const MAXSQR As

Long = 15

For i = 1 To 30

pctDone = i / 30

numSquares = pctDone * MAXSQR

Application.StatusBar = Application.Rept(Chr(31), numSquares)

Application.Wait Now + TimeSerial(0, 0, 1)

Next i

Application.StatusBar = False

End

Sub

这个例子在状态栏上显示最大15个方块(由常数MAXSQR定义)。这个方块通过使用ASCII字符31来产生。这个缺少关于宏需要多长时间的视觉指示,它仅表明宏正在进行。Wait方法模拟一个宏需要长时间来执行。

ThisWorkbook属性

ThisWorkbook属性返回一个表示当前运行的宏代码所在工作簿的 Workbook对象。这个属性允许载入宏定义包含代码的工作簿。这种情况下ActiveWorkbook属性并不起作用,因为活动工作簿可能并不是包含载入宏代码的工作簿。换句话说,ActiveWorkbook属性不返回载入宏工作簿;它返回调用载入宏的工作簿。如果你使用你的Visual Basic代码创建载入宏,你应该使用ThisWorkbook属性来限定任何必须运行在包含载入宏的工作簿上的语句。

下面示例关闭包含示例代码的工作簿。如果对工作簿的修改不被保存。

ThisWorkbook.Close SaveChanges:=False

下面的示例循环每个打开的工作簿并关闭它。然后关闭包含这个代码的工作簿。

Private oExcel As Excel.Application

Private wbk As Excel.Workbook

Sub CloseOpenWrkBks()

Dim wrkb As Workbook

For

Each wbk In Application.Workbooks

If https://www.360docs.net/doc/07918820.html, <> https://www.360docs.net/doc/07918820.html, Then

wbk.Close

True

End

If

Next wbk

ThisWorkbook.Close

True

End

Sub

Application对象方法

除了Application对象属性外,下面将介绍一些更加常用的方法。

FindFile方法和Dialogs集合

同GetOpenFilename方法不同,FindFile方法显示Open对话框并允许用户打开一个文件。如果新文件成功打开,此方法返回True。如果用户取消对话框,此方法返回False。

下面示例显示一个消息框提示用户打开一个指定文件,然后显示Open对话框。如果用户不能打开文件,显示一个消息框。

Sub OpenFile1( )

Dim bSuccess As

Boolean

Msgbox "Please locate the MonthlySales.xls file."

bSuccess = Application.FindFile

If

Not bSuccess Then

Msgbox "File not

open."

End

If

End

Sub

你也可以通过使用Dialogs集合细目的其中一个打开特别的对话框来完成同样的事情。使用Dialogs集合的一个好处是当你使用Show方法时,你可以传递参数给它来修改内置对话框的默认行为。例如,xlDialogOpen的参数有:file_text, update_links, read_only, format, prot_pwd, write_res_pwd, ignore_rorec,

file_origin, custom_delimit, add_logical, editable, file_access, notify_logical, converter.

注意:如需查找某个特定的对话框的参数,在Excel帮助文档的“内置对话框参数列表”中找到相应的对话框常数。

下面的例子显示“打开”对话框并设置“Book1.xls”在文件名下拉列表框中,用户不需要选择文件就可以在对话框中显示文件名。

Sub OpenFile2( )

Application.Dialogs(XlBuiltInDialog.xlDialogOpen).Show arg1:="Book1.xls"

End

Sub

Dialogs集合最激动人心的部分是你可以使用它显示任何Excel对话框-大约250种。你可以通过下面的步骤查看Dialogs集合的完整对话框列表。

1.打开Visual Basic编辑器。

2.单击菜单“视图”->“对象浏览器”,显示对象浏览器窗口,也可以按F2。

3.在搜索框中输入xlBuiltInDialog。

4.单击Search按钮。

GetOpenFilename方法

GetOpenFilename 方法显示标准“打开”对话框并返回用户选择的文件名,实际上并未打开任何文件。GetOpenFilename方法给你最大的控制从你的程序中打开一个工

作簿,因为它所做的就是以字符串返回用户选择的文件完整路径和文件名。获得文件名后接着做什么就取决于你自己了。例如,你可能传递结果给OpenText 方法。这个方法的语法如下(所有的参数都是可选的):

GetOpenFilename(FileFilter, FilterIndex, Title, ButtonText, MultiSelect)

参数FileFilter是一个定义过滤条件(如*.txt,*.xla)的字符串;FilterIndx指定默认文件过滤条件的序号,从1到 FileFilter中的过滤器数目;Title指定对话框的标题;ButtonText只用于Macintosh系统;MultiSelect是一个 Boolean值,表示可以多选文件。

下面的例子显示“打开”对话框,并在文件类型下拉框中使用文本文件(*.txt)过滤条件,然后使用消息框显示用户的选择。

Dim fileToOpen As

String

fileToOpen = Application.GetOpenFilename("Text Files (*.txt), *.txt")

If fileToOpen <> "" Then

MsgBox "Open " & fileToOpen

End

If

InputBox方法

就像你估计的,InputBox方法显示一个对话框提示用户输入一个值。这个方法通过指定期望从用户获取的数据类型允许你有选择性地输入。

InputBox方法语法如下:

InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextID, Type)

其中:

Prompt是显示在对话框中的信息,在这里你可以让用户知道你期望的数据类型。

Title是在对话框顶部显示的标题。

Default是最初显示的默认值。

Left和Top用来指定对话框的位置。这些值以屏幕的左上角为参考点,单位是磅。

HelpFile和HelpContextID指定一个帮助文件。如果使用这些参数,在对话框中将包括一个Help按钮。

Type是返回的数据类型,默认值是Text。允许的数据类型如下表。

Value Type

0 公式,以字符串返回,只需要此参数

1 数值,你也可以在此包括一个返回一个数值的公式

2 文本(字符串)

4 逻辑数值(True或False)

8 一个单元格引用,Range对象

16 一个错误数值,如#N/A

64 数值列表

注意:如果Type为8,你必须使用Set语句将结果赋值给一个Range对象,如下例所示

Set myRange = Application.InputBox(prompt := "Sample", type := 8)

下面的例子要求用户输入打印活动工作表的份数。注意Type参数表明此方法要求输入数字。

Sub PrintActiveSheet()

Dim TotalCopies As

Long, NumCopies As

Long

Dim sPrompt As

String, sTitle As

String

sPrompt = "How many copies do you want?"

sTitle = "Prints the active sheet"

TotalCopies = Application.InputBox(Prompt:=sPrompt, Title:=sTitle, Default:=1, Type:=1)

For NumCopies = 1 To TotalCopies

ActiveSheet.PrintOut

Next NumCopies

End

Sub

Run方法

Run方法执行一个宏或调用一个函数。你可以使用这个方法运行一个用VBA或Excel宏语言写的宏,或者运行一个动态链接库(DLL)或Excel加载宏(XLL)中的函数。XLL是Excel的加载宏,你可以使用任何支持创建DLLs的编译器来创建它。下面是此方法的语法:

Run(Macro, Arg1, , Arg30)

Macro是要执行的宏或函数的名字。Arg1到Arg30是你需要传递给宏或函数的任何参数。

下面的例子使用Run方法调用一个过程来设置一个范围中单元格的字体为粗体。注意你也可以使用Call方法来达到同样的结果。

Sub UseRunMethod()

Dim wks As Worksheet

Dim rng As Range

Set wks = Worksheets("Sheet2")

Set rng = wks.Range("A1:A10")

Application.Run "MyProc ", rng

' You could accomplish the same thing with:

' Call MyProc(rng)

End

Sub

Sub MyProc(rng As Range)

With rng.Font

.Bold = True

End

With

End

Sub

Application对象事件

Application对象也提供几个事件让你可以用来监控整个Excel程序的动作。要使用Application事件,你必须激活Application事件监控。请按照以下步骤操作:

1. 创建一个类。在VBE窗口中,单击“插入”–>“类模块”

2. 在“属性”栏中,更改类的名称为appEventClass。

3. 在类模块的代码窗口,输入:

Public

WithEvents Apply As Application

现在Application级的事件可以使用了。

4. 现在测试一下,在代码窗口的对象列表中,单击“Apply”。

5. 在代码窗口中的过程列表中,单击Apply_WorkbookOpen. 这样将在代码窗口中添加一个自动生成的过程用于Apply_WorkbookOpen事件。

6. 修改该过程如下:

Private

Sub Apply_WorkbookOpen(ByVal Wb As Workbook)

MsgBox "你打开了工作簿。"

End

Sub

7. 重复以上步骤加入Apply_WorkbookBeforeClose事件。修改该事件的代码如下:

Private

Sub Appl_WorkbookBeforeClose(ByVal Wb As Workbook, Cancel As

Boolean)

MsgBox "你关闭了工作簿。"

End

Sub

8. 接着,创建一个变量用来代表在类模块中创建的Application对象。在VBA Project的Project栏,双击ThisWorkbook节点打开代码窗口。

9. 加入下面的语句。

Dim ApplicationClass As

New AppEventClass

通过在ThisWorkbook代码窗口中添加以下过程来建立一个声明的对象到Application对象的关联。

Private

Sub Workbook_Open()

Set ApplicationClass.Appl = Application

End

Sub

10. 保存并关闭工作簿。

11. 现在打开该工作簿来测试代码。Apply_WorkbookOpen事件将显示对话框。

12. 关闭工作簿,Apply_WorkbookBeforeClose将显示对话框。

13. 回到AppEventClass类模块,单击过程列表将显示很多你可以在程序中用来监控动作的事件。

理解事件怎样被激发并以何种顺序激发对理解你的程序很重要。在类模块中加入其它事件,并插入消息框,然后尝试不同的动作看看什么时候什么事件将被激活。Application对象的其它用法

除了一些常用的对象外,你还可以在Excel程序中使用Application对象的其它的一些功能。下面讨论部分用法。

删除工作表时不弹出提示窗口

在下面的例子中,首先关闭任何询问是否需要删除工作表的警告消息框,然后删除工作表,再设置使警告消息框生效。

Sub DeleteSheet()

Application.DisplayAlerts = False

ActiveSheet.Delete

Application.DisplayAlerts = True

End

Sub

保存工作簿时无提示

这个例子在保存工作簿时没有提示用户。

Sub SaveWorksheet()

Application.DisplayAlerts = False

ActiveWorkbook.SaveAs "C:\MonthlySales.xls"

Application.DisplayAlerts = True

End

Sub

使用SendKeys发送信息到Notepad程序

下面的例子使用SendKeys语句从Excel语句中复制一个区域的数据到Notepad程序中,并保存为文本文件。

Sub SKeys()

Range("A1:D15").Copy ' Copy the range.

SendKeys "% n", True

' Minimize Excel.

Shell "notepad.exe", vbNormalFocus ' Start Notepad.

SendKeys "^V", True

' Past the range data into Notepad.

SendKeys "%FA", True

' Specify SaveAs.

SendKeys "SalesData.txt", True

' Provide a file name.

SendKeys "%S", True

' Save the file.

Close notepad

End

Sub

这个例子首先复制一个区域的数据到剪贴板,然后最小化Excel,启动Notepad,然后从剪贴板复制数据到Notepad,最后指定文件名并保存文件,再关闭Notepad。

在指定时间或间隔运行一个宏

你可以使用Application对象的OnTime方法在指定的时间或以固定时间间隔运行一个过程。OnTime方法的语法如下:

Application.OnTime(EarliestTime, Procedure, LatestTime, Schedule)

参数EarliestTime表示什么使用运行名称为参数Procedure的过程。可选参数LatestTime和Schedule变量分别表示运行过程的最后时间和是否新建一个过程来运行还是取消现有的过程。假如开始运行时Excel很忙,你需要指定一个时间范围来调用过程时参数 LatestTime很有帮助。

下面的示例每5分钟运行指定的过程YourProc

Application.OnTime EarliestTime:= Now + TimeValue("00:05:00), _

Procedure := "YourProc"

下面的示例每天正午的时候运行过程YourProc.

Application.OnTime _

EarliestTime:=TimeValue("12:00:00"), _

Procedure:="YourProc"

下面的示例每5分钟调用AutoSave过程。如果你关闭工作簿,调用Cleanup过程来取消前面设置的OnTime。

Private

Sub Workbook_Open()

Application.OnTime Now + TimeValue("00:05:00"), "AutoSave"

End

Sub

Private

Sub Workbook_BeforeClose(Cancel As

Boolean)

On

Error

Resume

Next

Application.OnTime Now + TimeValue("00:05:00"), "CleanUp", , False

End

Sub

注意:Workbook_Open和Workbook_BeforeClose事件包含在Workbook模块中。AutoSave和CleanUp过程应该位于标准模块中。

结论

这篇文章仅介绍Application对象的一部分成员。还有其他成员让你的用户以新的方式同Excel程序交互和改变你程序的外观。熟悉Application对象的使用将让你按照你自己的要求扩展和采用Excel的功能

Excel Application对象 开发指南

Excel Application对象开发指南 2009-12-26 13:10:21 标签:Excel VBA 概述 Application对象是Microsoft Office Excel 2007对象模型中最高级别的对象,表示Excel程序自身。Application对象提供正在运行的程序的信息、应用于程序实例的选项以及实例中打开的当前对象。因为它是对象模型中最高的对象,Application对象也包含组成一个工作簿的很多部件,包括如工作簿、工作表集合、单元格以及这些对象所包含的数据等。Application对象包括: ?程序范围的设置和选项。这些选项大部分同“工具”菜单下的“选项”对话框里的内容相同。 ?顶级对象返回的方法,如ActiveCell、ActiveSheet等。 在下面几节里,你将通过使用VBA代码示例学习到一些Application对象中经常使用到的对象、方法和属性。关于Application对象模型所有成员的详细资料,请参考Application对象成员。 Application对象中其它对象的引用方法 你可以使用Application属性返回Application对象。获取一个Application对象后,如需访问它下面的对象,可以在对象模型层级中往下移动。下面示例设置一个工作表的第一个单元格内容为20。 Application.Workbooks(1).Worksheets(1).Cells(1,1)=20 要表示一个单元格,上面的代码示例从Application对象开始,移到第一个工作簿,再移到第一个工作表,最后到这个单元格。 下面示例在另一个Excel程序中创建一个Excel工作簿对象,然后打开一个工作簿。 Set xl=CreateObject("Excel.Sheet") xl.Application.Workbooks.Open "newbook.xls" 不需要使用“Application”限定词,很多的属性和方法也可以直接被用来返回那些最常用的用户界面对象,如活动工作表(ActiveSheet属性)。例如,除了使用https://www.360docs.net/doc/07918820.html, = “Monthly Sales”,你也可以使用https://www.360docs.net/doc/07918820.html, = “Monthly Sales”。然而,当使用这个简便表示方法时必需小心,需要选择正确的对象。例如通过使用Worksheet对象的Activate方确定你选择了正确的工作簿和工作表后,你可以使用Cell(1,1)表示第一个单元格。 有几种情况你必需使用Application限定词。例如,OnTime对象(本文后面部分将讨论)需要这个限定词,还有程序窗口的Width和Height属性。一般来说,用来处理Excel窗口的外观或影响程序全局行为的属性或方法需要使用Application限定词;例如,DisplayFormlaBar 属性用来显示或隐藏公式栏,Calculation方法也需要限定词。 Application对象集合 这一节详细介绍一些和Application对象相关的集合。 AddIns集合 AddIns集合表示所有当前加载的Excel Add-in。你可以像枚举其它对象一样在你的程序中列举出关于add-in的不同类型信息。下面的示例列举出当前加载到Excel中的Add-in的路径和名称。 Sub ListAddIns() Dim myAddin As AddIn For Each myAddin In AddIns MsgBox myAddin.FullName

Application详解与用法

1:Application是什么? Application和Activity,Service一样,是android框架的一个系统组件,当android程序启动时系统会创建一个application对象,用来存储系统的一些信息。通常我们是不需要指定一个Application的,这时系统会自动帮我们创建,如果需要创建自己的Application,也很简单创建一个类继承Application并在manifest的application标签中进行注册(只需要给Application标签增加个name属性把自己的Application的名字定入即可)。 android系统会为每个程序运行时创建一个Application类的对象且仅创建一个,所以Application可以说是单例(singleton)模式的一个类.且application对象的生命周期是整个程序中最长的,它的生命周期就等于这个程序的生命周期。因为它是全局的单例的,所以在不同的Activity,Service中获得的对象都是同一个对象。所以通过Application来进行一些,数据传递,数据共享等,数据缓存等操作。 2:通过Application传递数据 假如有一个Activity A, 跳转到Activity B ,并需要推荐一些数据,通常的作法是Intent.putExtra() 让Intent携带,或者有一个Bundle把信息加入Bundle让Intent推荐Bundle对象,实现传递。但这样作有一个问题在于,Intent和Bundle所能携带的数据类型都是一些基本的数据类型,如果想实现复杂的数据传递就比较麻烦了,通常需要实现Serializable或者Parcellable接口。这其实是Android的一种IPC数据传递的方法。如果我们的两个Activity在同一个进程当中为什么还要这么麻烦呢,只要把需要传递的对象的引用传递过去就可以了。基本思路是这样的。在Application中创建一个HashMap ,以字符串为索引,Object为value这样我们的HashMap就可以存储任何类型的对象了。在

Application对象基本操作应用示例

Application对象基本操作应用示例 Application对象代表整个Microsoft Excel应用程序,带有175个属性和52个方法,可以设置整个应用程序的环境或配置应用程序。 示例01-01:体验开/关屏幕更新(ScreenUpdating属性) Sub 关闭屏幕更新() MsgBox "顺序切换工作表Sheet1→Sheet2→Sheet3→Sheet2,先开启屏幕更新,然后关闭屏幕更新" Worksheets(1).Select MsgBox "目前屏幕中显示工作表Sheet1" Application.ScreenUpdating = True Worksheets(2).Select MsgBox "显示Sheet2了吗?" Worksheets(3).Select MsgBox "显示Sheet3了吗?" Worksheets(2).Select MsgBox "下面与前面执行的程序代码相同,但关闭屏幕更新功能" Worksheets(1).Select MsgBox "目前屏幕中显示工作表Sheet1" & Chr(10) & "关屏屏幕更新功能" Application.ScreenUpdating = False Worksheets(2).Select MsgBox "显示Sheet2了吗?" Worksheets(3).Select MsgBox "显示Sheet3了吗?" Worksheets(2).Select Application.ScreenUpdating = True End Sub 示例说明:ScreenUpdating属性用来控制屏幕更新。当运行一个宏程序处理涉及到多个工作表或单元格中的大量数据时,若没有关闭屏幕更新,则会占用CPU的处理时间,从而降低程序的运行速度,而关闭该属性则可显著提高程序运行速度。 示例01-02:使用状态栏(StatusBar属性) Sub testStatusBar() Application.DisplayStatusBar = True '开启状态栏显示 '赋值状态栏显示的文本 Application.StatusBar = "https://www.360docs.net/doc/07918820.html," End Sub 示例说明:StatusBar属性用来指定显示在状态栏上的信息。若不想再显示状态栏文本,可使用Applicat ion.StatusBar = False语句关闭状态栏显示,也可以在程序开始将原先的状态栏设置存储,如使用语句o ldStatusBar = Application.DisplayStatusBar将状态栏原来的信息存储在变量oldStatusBar,在程序运行完成或退出时,将变量重新赋值给状态栏,如使用语句Application.DisplayStatusBar = oldStatusBa r,以恢复状态栏原状。

Application对象

6.5 Application对象 Application 对象的主要功能是用来存储和获取可以被所有用户之间进行共享的信息,它具有集合、方法和事件,但不具备属性。 一般的网站上都有一些应用程序,比如有BBS、电子商务等。而每个应用程序往往有是由多个ASP文件构成。这些ASP文件是整个应用程序中的子程序,彼此不是完全独立的,存在着某种关系。而Application对象负责对网站上各应用程序间共享的程序进行管理,并对应用程序的整个周期的设置进行控制。 由于ASP程序中的变量在程序重新执行之前都会恢复位Empty,所以上次运行的结果无法保存在有关的变量中。而Application对象中的数据可以被使用者所共享。这样,我们可以使用Application对象记录在程序运行期间不同用户所需要共享的数据。下面是ASP的Application对象的一些特性: ⑴数据可以在Application内部共享,因此可以覆盖多个用户。 ⑵一个Application包含事件可以触发某个Application脚本。 ⑶一个对象的例子可以被整个Application共享。 ⑷个别的Application可以用Internet Service Manager来设置而获得不同属性。 ⑸单独的Application可以隔离出来在他们自己的内存中运行,即如果一个人的Application遭到破坏,也不会影响其他人。 ⑹可以停止一个Application而不会影响到其他应用。 一个网站可以有不止一个的Application对象。例如可以根据针对于个别任务的一些ASP 文件创建个别的Application对象,也可以创建了一个Application对象来用于全部公用用户,而再次创建另外一个来限制在网络管理员的范围。还可以在位于同一台服务器的不同网站创建不同的Application对象。 6.5.1 Application对象的设置 一个Application的根目录由Internet Service Manager来设定,这时此目录以及其子目录均属于这个Application。不过如果某一个子目录也进行了设定,将被认为是另一个Application,如果要设定一个Application的话,可以使用下面的方法: ⑴可以从Microsoft Internet Iinformation Server程序组中执行Internet Service Manager。 ⑵在树型导航栏中点击您的默认站名。 ⑶选择一个存在的路径(您需要创建Application的路径),或者创建一个这样的路径。 ⑷点击属性图标或者右键该目录名称然后选择属性项。 ⑸在属性图标中,选择主目录或者虚拟目录项。 ⑹在Application Setting区中,点击Great键。 当创建完成Application后,就可以在Application设置区域中进行属性设置,比如可以限定是否使用Session和进行Buffer输出等等。而进行了这种设置之后就可以使用自己的Global.asa文件来创建自己的事件。

android Application类的详细介绍

在代码中经常看到application这个类,一直不知道这个是干什么用的,今天刚好有点时间,所以进行了详细的学习。 一.先对它的整体概念解释: 在android源码中对他的描述是; * Base class for those who need to maintain global application state. You can * provide your own implementation by specifying its name in your * AndroidManifest.xml's <application> tag, which will cause that class * to be instantiated for you when the process for your application/package is * created. SDK中的描述:Application类是为了那些需要保存全局变量设计的基本类,你可以在AndroidManifest.xml的标签中进行自己的实现,这样的结果是:当你 的application或者包被建立的时候将引起那个类被建立。 理解:就是说application是用来保存全局变量的,并且是在package创建的时候就跟着存在了。所以当我们需要创建全局变量的时候,不需要再像j2se那样需要创建public权限的static 变量,而直接在application中去实现。只需要调用Context的getApplicationContext或者Activity的getApplication方法来获得一个application对象,再做出相应的处理。 例如Launcher模块中;它自己就写了个application,在AndroidManifest.xml中将它进行了设置:

Excel.Application对象

因为QTP框架需要使用Excel.Application对象,保存一份相关函数说明 定制模块行为 (1) Option Explicit '强制对模块内所有变量进行声明 Option Private Module '标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示 Option Compare Text '字符串不区分大小写 Option Base 1 '指定数组的第一个下标为1 (2) On Error Resume Next '忽略错误继续执行VBA代码,避免出现错误消息 (3) On Error GoTo ErrorHandler '当错误发生时跳转到过程中的某个位置 (4) On Error GoTo 0 '恢复正常的错误提示 (5) Application.DisplayAlerts=False '在程序执行过程中使出现的警告框不显示 (6) Application.ScreenUpdating=False '关闭屏幕刷新 Application.ScreenUpdating=True '打开屏幕刷新 (7) Application.Enable.CancelKey=xlDisabled '禁用Ctrl+Break中止宏运行的功能 工作簿 (8) Workbooks.Add() '创建一个新的工作簿 (9) Workbooks(“book1.xls”).Activate '激活名为book1的工作簿 (10) ThisWorkbook.Save '保存工作簿 (11) ThisWorkbook.close '关闭当前工作簿 (12) ActiveWorkbook.Sheets.Count '获取活动工作薄中工作表数 (13) https://www.360docs.net/doc/07918820.html, '返回活动工作薄的名称 (14) https://www.360docs.net/doc/07918820.html, ‘返回当前工作簿名称 ThisWorkbook.FullName ‘返回当前工作簿路径和名称 (15) ActiveWindow.EnableResize=False ‘禁止调整活动工作簿的大小 (16) Application.Window.Arrange xlArrangeStyle Tiled ‘将工作簿以平铺方式排列 (17) ActiveWorkbook.WindowState=xlMaximized ‘将当前工作簿最大化 工作表 (18) https://www.360docs.net/doc/07918820.html,edRange.Rows.Count ‘当前工作表中已使用的行数 (19) Rows.Count ‘获取工作表的行数(注:考虑向前兼容性) (20) Sheets(Sheet1).Name= “Sum” '将Sheet1命名为Sum (21) ThisWorkbook.Sheets.Add Before:=Worksheets(1) '添加一个新工作表在第一工作表前 (22) ActiveSheet.Move After:=ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.Count) '将当前工作表移至工作表的最后 (23) Worksheets(Array(“sheet1”,”sheet2”)).Select '同时选择工作表1和工作表2 (24) Sheets(“sheet1”).Delete或Sheets(1).Delete '删除工作表1 (25) ActiveWorkbook.Sheets(i).Name '获取工作表i的名称 (26) ActiveWindow.DisplayGridlines=Not ActiveWindow.DisplayGridlines '切换工作表中的网格线显示,这种方法也可以用在其它方面进行相互切换,即相当于开关按钮 (27) ActiveWindow.DisplayHeadings=Not ActiveWindow.DisplayHeadings ‘切换工作表中的行列边框显示 (28) https://www.360docs.net/doc/07918820.html,edRange.Form atConditions.Delete ‘删除当前工作表中所有的条件格式 (29) Cells.Hyperlinks.Delete ‘取消当前工作表所有超链接 (30) ActiveSheet.PageSetup.Orientation=xlLandscape或ActiveSheet.PageSetup.Orientation=2 '将页面设置更改为横向

Application对象与Session对象

上一讲中,我们学习了Request对象的Form数据集合、QueryString数据集合和ServerVariables 数据集合。在继续下面的学习之前,建议你先轻松一下,因为接下来要介绍的Application 对象相对比较抽象,刚开始理解起来恐怕会不辨东西。切记:当你找不到北时,便不要过多考虑Application对象到底是什么东西?还是一句老话,先学会使用它。 一、了解Application对象。为了提神,我们先看一个计数器的例程(你应该运行它以便于理解): 先编辑一个wuf16.htm文件: 记录某个页面的点击数示例:wuf17.asp wuf17.asp的代码如下: <% @ LANGUAGE = VBScript %> <% 'wuf17.asp - 记录某一页面的访问数(计数器原理) Option Explicit Dim CountWeb CountWeb = Request.ServerVariables("SCRIPT_NAME") '这样保证每个页面都有一个唯一的变量, 避免混乱 %> <% Response.Write CountWeb & "

" & vbcrlf Application.Lock '请看讲解 Application(CountWeb) = Application(CountWeb) + 1 '累加器,点击数加1 Application.UnLock Response.Write "WEB服务器关闭重启前该页的点击总数为: " & Application(CountWeb) %> 运行这个程序时,对大部分的人来说,只有一台机器,既是Web服务器,又是客户端。那么你只能想象这样一种境况了:你的这两个主页文件放在很远的Web服务器上,而如潮水般的国内外用户正通过浏览器访问它们。每个用户点击一次,Application(CountWeb) 的值就加1,而且只要存放文件wuf17.asp的服务器没有关闭,Application(CountWeb)就将一直累加下去。但是注意,如果服务器关闭后重启,则Application(CountWeb)将重新从0开始计数(我晕,我说我的页面访问数怎么老是一位数)。为了避免这种永远从零开始的计数情况,你必须要在服务器关闭之前将Application(CountWeb)的值保存起来,下次需要时再取出来,就能够顺序累计下去了,具体如何做,且听N回后分解。 接下来的问题,就是Application.Lock、UnLock是什么意思?刚才我们做了一个假设,大量的用户正在访问该页面,而每一个用户的点击都会发生Application(CountWeb)加1,想想看,这样不就乱套了(什么!想不出,那肯定是你的主页终日只有你一个人赞助),所以得有个先来后到的规则。当某一用户访问该页面,需要修改Application(CountWeb)的值时,使用Lock方法加锁,避免其他用户修改,修改完后,再解锁。 从上例中您是否已看出,Application对象提供给所有用户共享信息(Application(CountWeb)),

Excel应用程序对象_Application对象_及其常用方法基本操作应用示例

第一章Excel应用程序对象(Application对象)及其常用方法 基本操作应用示例 Application对象代表整个Microsoft Excel应用程序,带有175个属性和52个方法,可以 设置整个应用程序的环境或配置应用程序。 示例01-01:体验开/关屏幕更新(ScreenUpdating属性) Sub关闭屏幕更新() MsgBox "顺序切换工作表Sheet1—Sheet2—Sheet3—Sheet2,先开启屏幕更新,然后关闭屏幕更新" Worksheets(1).Select MsgBox "目前屏幕中显示工作表Sheet r Application.ScreenUpdating = True Worksheets(2).Select MsgBox "显示 Sheet2了吗?“ Worksheets(3).Select MsgBox "显示 Sheet3了吗?“ Worksheets(2).Select MsgBox "下面与前面执行的程序代码相同,但关闭屏幕更新功能" Worksheets(1).Select MsgBox "目前屏幕中显示工作表Sheet1" & Chr(10) & "关屏屏幕更新功能" Application.ScreenUpdating = False Worksheets(2).Select MsgBox "显示 Sheet2了吗?“ Worksheets(3).Select MsgBox "显示 Sheet3了吗?“ Worksheets(2).Select Application.ScreenUpdating = True End Sub 示例说明:ScreenUpdating属性用来控制屏幕更新。当运行一个宏程序处理涉及到多个工作表或单元格中的大量数据时,若没有关闭屏幕更新,则会占用CPU的处理时间,从而降低程序的运行速度,而关闭该属性则可显著提高程序运行速度。 示例0彳-02:使用状态栏(StatusBar属性) Sub testStatusBar() Application.DisplayStatusBar = True '开启状态栏显示 '赋值状态栏显示的文本 Application.StatusBar = "https://www.360docs.net/doc/07918820.html," End Sub 示例说明:StatusBar属性用来指定显示在状态栏上的信息。若不想再显示状态栏文本,可使用Application.StatusBar = False语句关闭状态栏显示,也可以在程序开始将原先的状态栏设置存储,如使用语句oldStatusBar = Application.DisplayStatusBar将状态栏原来的信息存储在变量oldStatusBar,在程序运行完成或退出时,将变量重新赋值给状态栏,如使用语句 Application.DisplayStatusBar = oldStatusBar,以恢复状态栏原状。

Excel2007的Application对象的成员编程

Excel2007的Application对象的成员编程 概述 Application对象是Microsoft Office Excel 2007对象模型中最高级别的对象,表示Excel 程序自身。Application对象提供正在运行的程序的信息、应用于程序实例的选项以及实例中打开的当前对象。因为它是对象模型中最高的对象,Application对象也包含组成一个工作簿的很多部件,包括如工作簿、工作表集合、单元格以及这些对象所包含的数据等。 Application对象包括: ?程序范围的设置和选项。这些选项大部分同“工具”菜单下的“选项”对话框里的内容相同。 ?顶级对象返回的方法,如ActiveCell、ActiveSheet等。 在下面几节里,你将通过使用VBA代码示例学习到一些Application对象中经常使用到的对象、方法和属性。关于Application对象模型所有成员的详细资料,请参考Application 对象成员。 Application对象中其它对象的引用方法 你可以使用Application属性返回Application对象。获取一个Application对象后,如需访问它下面的对象,可以在对象模型层级中往下移动。下面示例设置一个工作表的第一个单元格内容为20。 Application.Workbooks(1).Worksheets(1).Cells(1,1)=20 要表示一个单元格,上面的代码示例从Application对象开始,移到第一个工作簿,再移到第一个工作表,最后到这个单元格。 下面示例在另一个Excel程序中创建一个Excel工作簿对象,然后打开一个工作簿。 Set xl=CreateObject("Excel.Sheet") xl.Application.Workbooks.Open "newbook.xls" 不需要使用“Application”限定词,很多的属性和方法也可以直接被用来返回那些最常用的用户界面对象,如活动工作表 (ActiveSheet属性)。例如,除了使用 https://www.360docs.net/doc/07918820.html, = “Monthly Sales”,你也可以使用https://www.360docs.net/doc/07918820.html, =

第10章、Application和session对象

第10章、Application和session对象 一、Application对象 Application对象的用途主要是记录整个网站的信息,例如上站人数、在线名单、意见调查或在线票选系统等。它可以用来记录不同浏览器端共享的变量。 集合: ●contents:此集合包含所有非对象变量,这是application对象的默认集合。倘若我们要取 application对象记录变量counter,可以写成application.contents(“counter”)或者application(“counter”)。 ●staticobjects:此集合包含所有对象变量,这些对象变量是在Global.asa文件中使用 标记所建立。 方法: ●contents.removeall:删除contents集合内所有变量。 ●contents.remove(item):从contents集合中删除item所指定的变量,item可以是字符串 或整数,若item为整数,那么这个整数所代表的是索引值。 ●lock:禁止其他浏览器端修改application对象记录的变量值 ●unlock:容许其他浏览器端修改application对象记录的变量值。 事件: ●Application_onstart:在建立application对象的时候会产生这个事件。 ●Application_onend:在结束application对象的时候会产生这个事件。 实例1: 这个计数器有缺陷,若刚好有两个用户同时上机存取该网页,就会出现少一人。解决此问题,得用下面所示: 实例2: <% application.lock …锁定application对象 application(“counter”)=application(“counter”)+1 application.unlock …解除application锁定 %> 您是第<%= application(“counter”)%>位访客 除了上述问题,还有一个问题,就是application的生命周期,在默认的情况下,若web 服务器关机或超过20分钟没有任何浏览器读取该网页,application对象会自动消失,而恢复为empty,若要彻底解决这个问题,必须将计数器的值写入文件。我们可改为如下: 实例3:

ExcelVBA常用技巧Application对象

VBA常用技巧 目录 VBA常用技巧 (1) 第5章Application对象 (2) 技巧1取得Excel版本信息 (2) 技巧2取得当前用户名称 (3) 技巧3Excel中的“定时器” (3) 技巧4设置活动打印机的名称 (5) 技巧5屏蔽、改变组合键的功能 (6) 技巧6设置Excel窗口标题栏 (7) 技巧7自定义Excel状态栏 (8) 技巧8灵活退出Excel (9) 技巧9隐藏Excel主窗口 (10) 9-1设置Application对象的Visible属性 (10) 9-2将窗口移出屏幕 (11) 9-3设置工作簿作为加载宏运行 (12)

第5章Application对象 技巧1 取得Excel版本信息 Application对象的Version属性可以返回Excel的版本号,如下面的代码所示。#001 Sub AppVersion() #002 Dim myVersion As String #003 Select Case Application.Version #004 Case "8.0" #005 myVersion = "97" #006 Case "9.0" #007 myVersion = "2000" #008 Case "10.0" #009 myVersion = "2002" #010 Case "11.0" #011 myVersion = "2003" #012 Case Else #013 myVersion = "版本未知" #014 End Select #015 MsgBox "Excel 版本是: " & myVersion #016 End Sub 代码解析: AppVersion过程返回Application对象的Version属性值来取得Excel版本号。应用于Application对象的Version属性返回Excel版本号,语法如下:expression.Version 参数expression是必需的,Application对象。 运行AppVersion过程结果如图1-1所示。

Application对象

Application对象 Application对象概述 Application对象是一个Web应用程序级的对象,是Web站点某个虚拟目录下子目录包含的网页、脚本程序的集合,通常由互相关联的html文件、asp文件和Global.asa文件组成。每一个Web站点可以设置多个虚拟目录,也就是说,每个Web站点上可以多个Web应用程序。 Application中所包含的数据可以在整个Web站点中被所有用户使用,并且可以再网站运行期间持久保存数据。 Application对象和Session对象有很多相似之处,他们的功能都是用于在不同的ASP页面之间共享信息。两者的主要区别如下: ●应用范围不同。Application对象是针对所有用户,可以被多个用户共享。一个用户接收到的Application变量可以传递给另外的用户。而Session 对象是针对单一用户,某个用户无法访问其他用户的Session变量。 ●存活时间不同。由于Application变量是多个用户共享的,因此不会因为某一个用户甚至全部用户离开而消失,一旦建立了Application变量,就会一直存在,直到网站关闭或默认的20分钟没有客户请求访问。而Session变量会随着用户离开网站而被自动删除。 Application对象是网站建设中经常使用的一项技术,利用Application 对象可以完成统计网站的在线人数、创建多用户游戏及多用户聊天室等功能,其功能类似于一般程序设计语言中“全局变量”。 Application对象的语法格式: Application.collectio n︱methot

其中,collection、methot分别表示Application对象的集合和方法。使用时,两个参数只能选一个。 Application对象包括Contents和StaticObjects两个数据集合。 1、Contents数据集合 Contents数据集合允许程序取得用户能够使用的所有Application对象,但不包括标记建立的对象和变量。 语法格式如下: Application.Contents(Application对象名称) 由于Contents集合是Application默认的集合,也可以使用下面的代码访问Contents集合: Application(Application对象名称) 下面的例子使用Application对象的Contents数据集合实现网站计数器的功能,同时将Session和Application对象做了比较。 网站登陆页面(login.asp)代码如下: <% if request.form("ok")="确定"then username=request.form("username") password=request.form("userpass") if username=<>""then session("username")=username session("password")=password response.redirect"cal.asp" end if end if %> login.asp

第三章:JSP内置对象 (request对象、response对象session对象、application对象、cookie)

第三章:Jsp隐式对象 (request对象、response对象session对象、application对象、cookie) Jsp隐式对象概述: 由JSP规范提供,不用编写者实例化。 通过Web容器实现和管理。 所有JSP页面均可使用。 只有在脚本元素的表达式或代码段中才可使用(<%=使用内置对象%>或<%使用内置对象%>)。 常用九大内置对象的作用和方法 1、out对象:代表提供输出流的访问。 2、request对象:request对象是从客户端向服务器端发出请求,包括用户提交的信息以及客户端的一些信息。 常用方法:getparameter()getParameterValues()setAttribute() getAttribute() 3、response对象:允许直接访问HttpServletResponse对象 常用方法:sendRedirect() 4、session对象:允许直接访问HttpServletResponse对象 常用方法:setAttribute()、getAttribute() 5、application对象:用于多个程序或者多个用户之间共享数据。 常用方法:setAttribute()、getAttribute() 6、config :将初始化数据传递给一个JSP页面 7、page :代表JSP页面对应的Servlet类实例 8、exception:针对错误网页,未捕捉的例外 9、pageContext :管理网页的属性

内置对象的作用域: ◆application:服务器启动到停止这段时间 ◆session:HTTP会话开始到结束这段时间 ◆request:HTTP请求开始到结束这段时间 ◆page:当前页面从打开到关闭这段时间 对于每一个用户都共享同一个对象的是:application对象,而每个用户分别使用不同对象实例的是:session对象 forword和sendRedirect的区别: forword仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;sendRedirect则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接 getParameter(String name); 例题一: 文件名:input.html

Application对象

Application对象 课程引入: HTTP通信协议不会保留客户端的用户状态,用户可以通过网页间数据共享来保留用户信息,以便正确地执行Web应用程序。 网站的数据共享分为两种: 共享给网站所有用户:在https://www.360docs.net/doc/07918820.html,程序中可以使用Application变量进行共享,例如目前在线的用户数。 每位用户的专用数据:在https://www.360docs.net/doc/07918820.html,程序中可以使用Session变量进行保存,例如登录用户的权限。 可以将Application对象所包含的数据视作Web应用程序的公共全局变量;而Session对象包含的数据可以被看作Web应用程序的个人局部局变量 一、Application对象 (一)Application对象的相关概念: https://www.360docs.net/doc/07918820.html, 应用程序是单个Web 服务器上的某个虚拟目录及其子目录范围内的所有网页、程序、图片等的总和。 可以把Application对象视为公共场所中的公告牌,任何一个用户写入其中的信息都可以被其他用户看到。Application对象是共有的对象,所有的用户都可以对某个特定的Application对象进行修改。利用Application对象,可以创建网站计数器等常用应用程序。 “Application”:应用程序的启动及退出 第一个用户访问站点时,应用程序启动,并创建一个Application对象。创建成功后,整个应用程序中都可以使用该对象。除非应用程序关闭,否则对象一直存储在内存中。 (二)设置和读取Application对象变量的值 (1)设置Application对象变量的值 语法格式: Application[“变量名称”]=数据; 或 Application.Add(“变量名称”,数据); 参数说明: Application对象变量的形式不但可以是简单变量,还可以是数组,但不能在Application对象中存储https://www.360docs.net/doc/07918820.html,的内建对象。

Application对象及其常用方法基本操作应用示例

Application对象及其常用方法基本操作应用示例 Application对象代表整个Microsoft Excel应用程序,带有175个属性和52个方法,可以设置整个应用程序的环境或配置应用程序。 示例01-01:体验开/关屏幕更新(ScreenUpdating属性) Sub 关闭屏幕更新() MsgBox "顺序切换工作表Sheet1→Sheet2→Sheet3→Sheet2,先开启屏幕更新,然后关闭屏幕更新" Worksheets(1).Select MsgBox "目前屏幕中显示工作表Sheet1" Application.ScreenUpdating = True Worksheets(2).Select MsgBox "显示Sheet2了吗?" Worksheets(3).Select MsgBox "显示Sheet3了吗?" Worksheets(2).Select MsgBox "下面与前面执行的程序代码相同,但关闭屏幕更新功能" Worksheets(1).Select MsgBox "目前屏幕中显示工作表Sheet1" & Chr(10) & "关屏屏幕更新功能" Application.ScreenUpdating = False Worksheets(2).Select MsgBox "显示Sheet2了吗?" Worksheets(3).Select MsgBox "显示Sheet3了吗?"

Worksheets(2).Select Application.ScreenUpdating = True End Sub 示例说明:ScreenUpdating属性用来控制屏幕更新。当运行一个宏程序处理涉及到多个工作表或单元格中的大量数据时,若没有关闭屏幕更新,则会占用CPU的处理时间,从而降低程序的运行速度,而关闭该属性则可显著提高程序运行速度。 示例01-02:使用状态栏(StatusBar属性) Sub testStatusBar() Application.DisplayStatusBar = True '开启状态栏显示 '赋值状态栏显示的文本 Application.StatusBar = "https://www.360docs.net/doc/07918820.html," End Sub 示例说明:StatusBar属性用来指定显示在状态栏上的信息。若不想再显示状态栏文本,可使用Application. StatusBar = False语句关闭状态栏显示,也可以在程序开始将原先的状态栏设置存储,如使用语句oldStat usBar = Application.DisplayStatusBar将状态栏原来的信息存储在变量oldStatusBar,在程序运行完成或退出时,将变量重新赋值给状态栏,如使用语句Application.DisplayStatusBar = oldStatusBar,以恢复状态栏原状。 示例01-03:处理光标(Cursor属性) Sub ViewCursors() Application.Cursor = xlNorthwestArrow MsgBox "您将使用箭头光标,切换到Excel界面查看光标形状" Application.Cursor = xlIBeam MsgBox "您将使用工形光标,切换到Excel界面查看光标形状"

InternetExplorer.Application对象的Documen属性

转:InternetExplorer.Application对象的Documen属性(2009-06-01 11:13:11)转载▼标签:杂谈 document 文挡对象- JavaScript脚本语言描述 --------------------------------------------------------------------- 注:页面上元素name属性和JavaScript引用的名称必须一致包括大小写否则会提示你一个错误信息"引用的元素为空或者不是对象" --------------------------------------------------------------------- 对象属性 document.title //设置文档标题等价于HTML的标签document.bgColor //设置页面背景色 document.fgColor //设置前景色(文本颜色) document.linkColor //未点击过的链接颜色 document.alinkColor //激活链接(焦点在此链接上)的颜色 document.vlinkColor //已点击过的链接颜色 document.URL //设置URL属性从而在同一窗口打开另一网页document.fileCreatedDate //文件建立日期,只读属性 document.fileModifiedDate //文件修改日期,只读属性 document.fileSize //文件大小,只读属性 document.cookie //设置和读出cookie document.charset //设置字符集简体中文:gb2312 --------------------------------------------------------------------- 对象方法 document.write() //动态向页面写入内容 document.createElement(Tag) //创建一个html标签对象 document.getElementByIdx(ID) //获得指定ID值的对象 document.getElementsByName(Name) //获得指定Name值的对象 --------------------------------------------------------------------- images集合(页面中的图象) a)通过集合引用 document.images //对应页面上的<img>标签 document.images.length //对应页面上<img>标签的个数 document.images[0] //第1个<img>标签 document.images[i] //第i-1个<img>标签 b)通过nane属性直接引用 <img name="oImage"> document.images.oImage //https://www.360docs.net/doc/07918820.html,属性 c)引用图片的src属性 document.images.oImage.src //https://www.360docs.net/doc/07918820.html,属性.src d)创建一个图象 var oImage oImage = new Image() document.images.oImage.src="https://www.360docs.net/doc/07918820.html,/1.jpg" //同时在页面上建立一个<img>标签与之对应就可以显示</p></div> <div class="rtopicdocs"> <div class="coltitle">相关主题</div> <div class="relatedtopic"> <div id="tabs-section" class="tabs"> <ul class="tab-head"> <li id="7591593"><a href="/topic/7591593/" target="_blank">application对象</a></li> </ul> </div> </div> </div> </div> <div id="rightcol" class="viewcol"> <div class="coltitle">相关文档</div> <ul class="lista"> <li><a href="/doc/9a1985785.html" target="_blank">Application对象及其常用方法基本操作应用示例</a></li> <li><a href="/doc/c217652712.html" target="_blank">Excel_Application对象指南</a></li> <li><a href="/doc/1411496586.html" target="_blank">Application详解与用法</a></li> <li><a href="/doc/4615697379.html" target="_blank">用Application对象制作留言板</a></li> <li><a href="/doc/7b15625215.html" target="_blank">ExcelVBA常用技巧Application对象</a></li> <li><a href="/doc/b11023012.html" target="_blank">InternetExplorer.Application对象的Documen属性</a></li> <li><a href="/doc/e28586917.html" target="_blank">3.7新application对象及常用方法</a></li> <li><a href="/doc/3415275217.html" target="_blank">VBA for Excel Application对象</a></li> <li><a href="/doc/5e19174812.html" target="_blank">Excel应用程序对象_Application对象_及其常用方法基本操作应用示例</a></li> <li><a href="/doc/8e16224840.html" target="_blank">Application对象</a></li> <li><a href="/doc/c716967797.html" target="_blank">实验六、Session和Application对象</a></li> <li><a href="/doc/0318932638.html" target="_blank">JSP程序设计实例教程第6讲 Application对象Cookie对象</a></li> <li><a href="/doc/f116917732.html" target="_blank">Excel VBA常用技巧 第05章 Application对象</a></li> <li><a href="/doc/4913028953.html" target="_blank">Java中application对象详解</a></li> <li><a href="/doc/7313796188.html" target="_blank">第10章、Application和session对象</a></li> <li><a href="/doc/a116041983.html" target="_blank">Excel VBA编程 Application对象</a></li> <li><a href="/doc/e44968711.html" target="_blank">WORD之Application对象介绍</a></li> <li><a href="/doc/2e1527331.html" target="_blank">Application对象</a></li> <li><a href="/doc/5f16898083.html" target="_blank">Application对象与Session对象</a></li> <li><a href="/doc/856186403.html" target="_blank">第三章:JSP内置对象 (request对象、response对象session对象、application对象、cookie)</a></li> </ul> <div class="coltitle">最新文档</div> <ul class="lista"> <li><a href="/doc/4719202409.html" target="_blank">北京市发展计划委员会关于贯彻落实《北京市招标投标条例》工作的通知</a></li> <li><a href="/doc/4619202410.html" target="_blank">招标投标的法律法规</a></li> <li><a href="/doc/2119366988.html" target="_blank">北京市园林绿化局关于印发《北京市园林绿化工程招标投标管理办法》的通知</a></li> <li><a href="/doc/1819308429.html" target="_blank">北京市建设工程施工投标资格预审办法</a></li> <li><a href="/doc/e319035989.html" target="_blank">七年级数学奥数知识点总结</a></li> <li><a href="/doc/d219182300.html" target="_blank">七年级实用的奥数知识点</a></li> <li><a href="/doc/c119068616.html" target="_blank">七年级奥数复杂吗知识点</a></li> <li><a href="/doc/c219068617.html" target="_blank">七年级必背奥数知识点归纳</a></li> <li><a href="/doc/a619211214.html" target="_blank">七年级上册数学奥数知识点</a></li> <li><a href="/doc/9619154871.html" target="_blank">七年级数字奥数知识点汇总</a></li> <li><a href="/doc/8719166240.html" target="_blank">七年级奥数基础知识点总结</a></li> <li><a href="/doc/8b19166239.html" target="_blank">七年级必背奥数知识点总结</a></li> <li><a href="/doc/7b19307534.html" target="_blank">七年级奥数知识点汇总</a></li> <li><a href="/doc/4219202406.html" target="_blank">七年级数学奥数知识点归纳</a></li> <li><a href="/doc/4b19202407.html" target="_blank">七年级要学的奥数知识点</a></li> <li><a href="/doc/4b19202405.html" target="_blank">七年级数学奥数知识点</a></li> <li><a href="/doc/4019202408.html" target="_blank">初一年级奥数知识点:正数与负数</a></li> <li><a href="/doc/2a19366986.html" target="_blank">七年级奥数基础知识点归纳</a></li> <li><a href="/doc/2b19366987.html" target="_blank">七年级奥数知识点</a></li> <li><a href="/doc/1119308428.html" target="_blank">七年级奥数知识点小结</a></li> </ul> </div> </div> <script> var sdocid = "00ba007f998fcc22bdd10d28"; </script> <div class="clearfloat"></div> <div id="footer"> <div class="ft_info"> <a href="https://beian.miit.gov.cn">闽ICP备16038512号-3</a> <a href="/tousu.html" target="_blank">侵权投诉</a>  ©2013-2023 360文档中心,www.360docs.net | <a target="_blank" href="/sitemap.html">站点地图</a><br /> 本站资源均为网友上传分享,本站仅负责收集和整理,有任何问题请在对应网页下方投诉通道反馈 </div> <script type="text/javascript">foot()</script> </div> </body> </html>