Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
楼主: 武林长风

[已解决]求助vba代码

[复制链接]
 楼主| 发表于 2015-2-20 17:13 | 显示全部楼层
hwc2ycy 发表于 2015-2-20 17:11
你的意思是先检测是否存在F盘的ABC文件夹,如果有,就保存,没有就删除工作簿?

对,若密码输错3次,有这个文件夹就先复制到那里,然后删除,没有就直接删除。
回复

使用道具 举报

发表于 2015-2-20 17:14 | 显示全部楼层
  1. UserForm1.Show
复制代码
你没这写段代码,你让它怎么显示?
回复

使用道具 举报

 楼主| 发表于 2015-2-20 17:14 | 显示全部楼层
hwc2ycy 发表于 2015-2-20 17:13
复制后,是删除源的还是存在f:\abc下的。

删除原来的文件。
回复

使用道具 举报

发表于 2015-2-20 17:15 | 显示全部楼层
那问题来了,要是人家打开的就是F:\ABC下的这个文件,又如何处理,直接删除这个么。
回复

使用道具 举报

 楼主| 发表于 2015-2-20 17:16 | 显示全部楼层
蝶·舞 发表于 2015-2-20 17:14
你没这写段代码,你让它怎么显示?

哦,请帮忙写个全的代码,谢谢1
回复

使用道具 举报

 楼主| 发表于 2015-2-20 17:17 | 显示全部楼层
hwc2ycy 发表于 2015-2-20 17:15
那问题来了,要是人家打开的就是F:\ABC下的这个文件,又如何处理,直接删除这个么。

这个文件夹我想隐藏起来,不是加密。
回复

使用道具 举报

发表于 2015-2-20 17:24 | 显示全部楼层
  1. Private Sub CommandButton1_Click()    '单击"确定"按钮的时候执行过程
  2.     Application.ScreenUpdating = False          '关闭屏幕更新
  3.     Static i As Integer                         '声明一个变量
  4. '判断用户名和密码是否输入正确
  5.     If CStr(User.Value) = "张三" And CStr(Password.Value) = "123" Then
  6.         Unload Me                              '关闭登录窗体
  7.         Application.Visible = True             '显示Excel界面
  8.     Else
  9.         i = i + 1             '密码或用户名输入错误一次,变量i加1
  10.         If i = 3 Then         '如果输错三次执行下面的语句
  11.             MsgBox "对不起,你无权打开工作薄!", vbInformation, "提示"
  12.             '自杀语句,慎用
  13.             '            With ThisWorkbook
  14.             '                    .Saved = True
  15.             '                    .ChangeFileAccess xlReadOnly
  16.             '                    Kill .FullName
  17.             '                    .Close False
  18.             '                End If
  19.             '            End With

  20.             Dim fs As Object
  21.             Set fs = CreateObject("Scripting.FileSystemObject")
  22.             If fs.FolderExists("f:\abc") Then
  23.                 ThisWorkbook.SaveCopyAs "f:\abc" & ThisWorkbook.Name
  24.             Else
  25.                 With ThisWorkbook
  26.                     .Saved = True
  27.                     .ChangeFileAccess xlReadOnly
  28.                     Kill .FullName
  29.                     .Close False

  30.                 End With
  31.             End If


  32.             'ThisWorkbook.Close savechanges:=False            '关闭当前工作薄,不保存更改
  33.         Else                        '如果输错不满三次,执行下面的语句
  34.             MsgBox "输入错误,你还有" & (3 - i) & "次输入机会。", vbExclamation, "提示"
  35.             User.Value = ""                 '清除文字框中的用户名
  36.             Password.Value = ""             '清除文字框中的密码
  37.         End If
  38.     End If
  39.     Application.ScreenUpdating = True           '开启屏幕更新
  40. End Sub
复制代码
回复

使用道具 举报

发表于 2015-2-20 17:26 | 显示全部楼层
我没有测试,楼主测下,有问题再说。
回复

使用道具 举报

发表于 2015-2-20 17:26 | 显示全部楼层
测试前 先备份好相关数据,避免删除了。
回复

使用道具 举报

 楼主| 发表于 2015-2-20 17:28 | 显示全部楼层
hwc2ycy 发表于 2015-2-20 17:24

输入密码错误3次后,出现: 11.jpg
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-3 17:46 , Processed in 0.562681 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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