Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 3836|回复: 3

[分享] 【烟花原创】VBA零基础之第91篇 Application对象(九)

[复制链接]
发表于 2014-1-26 17:43 | 显示全部楼层 |阅读模式
本帖最后由 hwc2ycy 于 2014-1-27 16:15 编辑

InputBox 方法
 显示一个接收用户输入的对话框。
 返回此对话框中输入的信息。
 语法:
  InputBox(Prompt, Title, Default, Left, Top, HelpFile, HelpContextID,Type)
   Prompt 必选,要在对话框中显示的消息。
    可为字符串、数字、日期、或布尔值,
    在显示之前,Microsoft Excel 自动将其值强制转换为 String
   Title 可选,输入框的标题。如果省略该参数,默认标题将为“Input”
   Default 可选 Variant 指定一个初始值,该值在对话框最初显示时出现在文本框中。
    如果省略该参数,文本框将为空。该值可以是 Range 对象。
   Left 可选 Variant 指定对话框相对于屏幕左上角的 X 坐标(以磅为单位)。
   Top 可选 Variant 指定对话框相对于屏幕左上角的 Y 坐标(以磅为单位)。
   HelpFile 可选 Variant 此输入框使用的帮助文件名。
    如果存在 HelpFile HelpContextID 参数,对话框中将出现一个帮助按钮。
   HelpContextID 可选,HelpFile 中帮助主题的上下文 ID 号。
   Type 可选,指定返回的数据类型。如果省略该参数,对话框将返回文本。
 返回值:Variant
 说明:
  Type参数可以为下列值之一或其中几个值的和。
  例如,对于一个可接受文本和数字的输入框,将 Type 设置为 1 + 2
   0 公式
   1 数字
   2 文本(字符串)
   4 逻辑值(True False
   8 单元格引用,作为一个 Range 对象
   16 错误值,如 #N/A
   64 数值数组
  使用 InputBox 可以显示一个简单的对话框,以便可以输入要在宏中使用的信息。
  此对话框有一个确定按钮和一个取消按钮。
  如果选择了确定按钮,则 InputBox 将返回对话框中输入的值。
  如果单击取消按钮,则 InputBox 返回 False

  如果 Type 0InputBox 将以文本格式返回公式。
   例如,“=2*PI()/360”。如果公式中有引用,将以 A1样式引用返回(使用 ConvertFormula 转换引用样式)。
  如果 Type 8InputBox 将返回一个 Range 对象。
  必须用 Set 语句将结果指定给一个 Range 对象,如下例所示。
  Set myRange = Application.InputBox(prompt := "Sample",type := 8)
  如果不使用 Set 语句,此变量将被设置为这个区域的值,而不是 Range 这个对象本身。

  如果使用 InputBox 方法要求用户输入公式,则必须使用 FormulaLocal 属性来将此公式指定给一个 Range 对象。
  输入的公式使用用户语言。

  InputBox 方法与 InputBox 函数的区别在于:
   它可以对用户的输入进行选择性验证,也可用于 Microsoft Excel 对象、误差值、和公式的输入。
   Inputbox方法可以选取单元格对象
 注意:
  Application.InputBox 调用的是 InputBox 方法,
  不带对象识别符的 InputBox 调用的是 InputBox 函数。
 示例:
  Dim r
  r = Application.InputBox(prompt:="请输入一个数值:",Title:="测试Inputbox方法", _
                        Default:=168, Type:=1)
  '在输入数值的情况下,如果多选单元格,只会返回左上角单元格的值
  '同时,多选区域是无效的
  MsgBox r

  r = Application.InputBox(prompt:="请输入公式:",_
                        Default:="=a1", Type:=0)

  MsgBox r & vbCr & Application.ConvertFormula(r, xlR1C1,xlA1)
  '这里返回的公式是R1C1格式的,可以使用Application.ConvertFormula 方法转换成A1样式

  On Error Resume Next
  '为了避免点击取消后,产生类型不匹配错误,这里产生错误时继续接着执行
  Set r = Application.InputBox(prompt:="请选择单元格区域:",_
                           Default:=Range("a1").Address, Type:=8)
  If r Is Nothing Then
   MsgBox "对话框取消了"
  Else
   MsgBox r.Address
  End If


Intersect 方法
 返回一个 Range 对象,该对象表示两个或多个区域重叠的矩形区域。
 语法:
  Intersect(Arg1, Arg2, Arg3, Arg4, Arg5,Arg6, Arg7, Arg8, Arg9, _
                     Arg10, Arg11, Arg12, Arg13, Arg14, Arg15, Arg16,  _
      Arg17,Arg18, Arg19, Arg20, Arg21, Arg22, Arg23,  _
      Arg24, Arg25, Arg26, Arg27, Arg28,Arg29, Arg30)
    Arg1,arg2是必选参数,要求为Range对象。
  另外,有个细节需要注意下:
   所有的参数必须是位于同一个工作表内的单元格。
   当参数为不同工作表的单元格时,会产生运行错误。
 示例:
  Dim rg As Range
  Set rg =Application.Intersect(Range("a1"), Range("a2"))
  If rg Is Nothing Then
  Else
   MsgBox rg.Address
  End If
  Set rg =Application.Intersect(Range("a1:c9"), Range("b4:k10"))
  If rg Is Nothing Then
  Else
    MsgBox rg.Address
  End If
  Set rg =Application.Intersect(Range("a1:c9"), Range("b4:k10"),Range("c5"), Range("c2:d3"))
  If rg Is Nothing Then
  Else
    MsgBox rg.Address
  End If


Union 方法
 返回两个或多个区域的合并区域。
 语法:
  Union(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6,Arg7, Arg8,  _
     Arg9, Arg10, Arg11, Arg12, Arg13, Arg14, Arg15,  _
     Arg16, Arg17,Arg18, Arg19, Arg20, Arg21, Arg22,  _
     Arg23, Arg24, Arg25, Arg26, Arg27, Arg28,Arg29, Arg30)
   Arg1Arg2必选,要求为Range对象。
 返回值:Range
 合并时的注意事项与InterSect方法相同,要求为同一个工作表上的单元格。
 示例:
  Dim rg As Range
  Set rg =Application.Union(Range("a1"), Range("a1:b1"),Range("c1"))
  MsgBox rg.Address

评分

参与人数 1 +18 收起 理由
youfang + 18 烟花,您辛苦了,就快100集了

查看全部评分

excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-1-27 08:48 | 显示全部楼层
回复

使用道具 举报

发表于 2014-6-11 16:57 | 显示全部楼层
回复

使用道具 举报

发表于 2014-6-18 13:41 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 12:32 , Processed in 0.238763 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表