Excel精英培训网

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

[已解决]InputBox默认值如何设为最后一次输入的值

[复制链接]
发表于 2013-1-28 00:35 | 显示全部楼层 |阅读模式
InputBox默认值如何设为最后一次输入的值,如 InputBox("请输入文件名:", "保存文件名", "改建斗渠01")      ,其中 "改建斗渠01" 为inputbox提示框的默认值, 有没有办法,把这个默认值设置成我最后一次输入 inputbox提示框的值,例子中是"改建斗渠01"   ,假如我最后一次输入inputbox提示框的值是  新建斗渠01  ,我怎么在这次程序运行结束后 把这个  新建斗渠01   设置成默认值呢?谁会,求指教
最佳答案
2013-2-4 11:17
本帖最后由 extyg 于 2013-2-4 11:27 编辑

定义一个name,用这个name来保存数据:
Sub test()
    Dim str$
    On Error GoTo 100
    str = InputBox("请输入信息", "测试", [MyVal])
100:
    If Err.Number <> 0 Then str = InputBox("请输入信息", "测试")
    If Len(str) Then ThisWorkbook.Names.Add Name:="Myval", RefersTo:=str
End Sub
发表于 2013-1-28 08:25 | 显示全部楼层
本帖最后由 hwc2ycy 于 2013-1-28 08:32 编辑

在工程顶部定义个变量。
这样每次运行时都会是上次的值。
回复

使用道具 举报

发表于 2013-1-28 08:32 | 显示全部楼层
  1. Dim MyValue As String


  2. Sub test()
  3.     Dim str$
  4.     str = InputBox("请输入信息", "测试", MyValue)
  5.     If Len(str) Then MyValue = str
  6. End Sub
复制代码

评分

参与人数 1 +1 收起 理由
ddbb2008 + 1 很给力!

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2013-1-30 19:57 | 显示全部楼层
hwc2ycy 发表于 2013-1-28 08:32

感谢帮助,太强大了
回复

使用道具 举报

发表于 2013-1-31 15:18 | 显示全部楼层
拿一个单元格来记录最后一次输入的值,每次去那里调用就可以了!!

虽然使用 全局变量 也可以解决,但是全局变量在工作薄打开后第一次使用时,是没有值的!!
还有就是代码中如果使用了 End 值也会被清空

所以这应该算是一个小小的 bug 吧!!
回复

使用道具 举报

发表于 2013-2-4 11:17 | 显示全部楼层    本楼为最佳答案   
本帖最后由 extyg 于 2013-2-4 11:27 编辑

定义一个name,用这个name来保存数据:
Sub test()
    Dim str$
    On Error GoTo 100
    str = InputBox("请输入信息", "测试", [MyVal])
100:
    If Err.Number <> 0 Then str = InputBox("请输入信息", "测试")
    If Len(str) Then ThisWorkbook.Names.Add Name:="Myval", RefersTo:=str
End Sub
回复

使用道具 举报

发表于 2018-12-23 13:18 | 显示全部楼层
请教: range("a1")=a,当a=345,怎样才能间接做到range("a1")=345
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-24 22:45 , Processed in 0.321886 second(s), 12 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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