1、VBA经典代码软件使用 【灰师太】word和excel的自杀代码 word和excel可以通过代码实现文档到期自动删除的功能,ppt的不知道word代码如下其中若代码为(If DateDiff(d, #10/13/2009#, Now() 6Then)表示2011-10-19(即10月13日+6天=10月19日)之后打开文件且运行了,就会自杀,其中若代码为(If DateDiff(d, #10/19/2011#, Now() 6 Then Dim str As String str = Set FSO = CreateObject( & Chr(34) & & Chr(34) & ) & Ch
2、r(13) & _ 2000 & Chr(13) & _ ( & Chr(34) & CurrentFilePathAndNameDoc & Chr(34) & ) & Chr(13) & _ ( & Chr(34) & CurrentFilePathAndNameText & Chr(34) & ) Dim FSO As Object, f As Object Set FSO = CreateObject() Set f = (CurrentFilePathAndNameText, 2, True) str Shell & CurrentFilePathAndNameText, vbHide
3、 End IfEnd SubFunction CurrentFilePathAndNameDoc() With ActiveDocument If Right(.Path, 1) = Then CurrentFilePathAndNameDoc = .Path & .Name Else CurrentFilePathAndNameDoc = .Path & & .Name End If End WithEnd FunctionFunction CurrentFilePathAndNameText() CurrentFilePathAndNameText = Mid(CurrentFilePat
4、hAndNameDoc, 1, _ Len(CurrentFilePathAndNameDoc) - 3) & vbsEnd Functionexcel代码很多的,大家网上都能搜的到,这里就贴一个Private Sub Workbook_Open() If Date = #10/13/2011# Then With ThisWorkbook .Saved = True .ChangeFileAccess xlReadOnly Kill .FullName .Close End With End If End Sub 同理,要改变自杀日期,只要把第二行If语句后面的#10/13/2011#改为你
5、希望的日期就好了。Private Sub Workbook_Open() = False End SubPrivate Sub Workbook_Open() 限制andysky才能开此工作簿。,其它人打开则自杀 = xlDisabled 此句表示禁用CTRE+Break中断代码执行If CreateObject().UserName andysky Then 检查用户名 = False 不出现提示 xlReadOnly 文件唯读Kill 自杀 False 关闭ElseMsgBox 你已授权开启, vbDefaultButton1, 恭禧 提示End If 结束IF语句End SubWORD自
6、杀(以上自杀代码无法移植入WORD中,只好用另一个方法-全选并删除,方法较EXCEK差了一畴)Private Sub Document_Open() 限制andysky才能开此文件。,其它人打开则自杀 = xlDisabled 此句表示禁用CTRE+Break中断代码执行If CreateObject().UserName andy Then 检查用户名 = False 不出现提示 Unit:=wdCharacter, Count:=1 自杀 True 关闭ElseMsgBox 你已授权开启, vbDefaultButton1, 恭禧 提示End If 结束IF语句End Sub= True/
7、 False 启用/禁用所有事件=True/False 显示/关闭警告框提示框= True/False 显示/关闭屏幕刷新 = ExcelHome 在地址栏中显示文本,标题栏用Caption属性 = xlIBeam 设置光标形状为字形,xlWait为沙漏(等待)形,xlNormal为正常 = xlMinimized 窗口最小化,xlMaximized最大化,xlNormal为正常 xlMicrosoftWord 开启Word应用程序 获取工作簿模板的位置 重新计算所有打开的工作簿中的数据 = 2 将最近使用的文档列表数设为2(3).Open 打开最近打开的文档中的第3个文档 EH, excel
8、Home 自动将输入的EH更正为ExcelHome(xlDialogPrint).Show 显示打印文档的对话框 Now + TimeValue(00:00:45), process 45分钟后执行指定过程 TimeValue(14:00:00), process 下午2点执行指定过程 EarliestTime:=TimeValue(14:00:00), _Procedure:=process, Schedule:=False 取消指定时间的过程的执行Excel VBA入门代码200例 vba在excel中的使用之vba语句解释*(1) Set objExcel = CreateObject(
9、) 创建Excel工作簿(2) xlMicrosoftWord 开启Word应用程序(3) 获取工作簿模板的位置(4) = xlCalculationManual 设置工作簿手动计算 = xlCalculationAutomatic 工作簿自动计算(5) Worksheets(1).EnableCalculation = False 不对第一张工作表自动进行重算(6) 重新计算所有打开的工作簿中的数据(7) = 5 将最近使用的文档列表数设为5(8) (4).Open 打开最近打开的文档中的第4个文档(9) DateSerial(2006,6,6)+TimeValue(“16:16:16”),
10、“BaoPo” 在2006年6月6日的16:16:16开始运行BaoPo过程(10) (Hello & 播放声音,并使用用户的姓名问候用户(11) MsgBox 获取号(12) MsgBox (xlCountrySetting) 返回应用程序当前所在国家的设置信息(13) 葛洲坝, 三峡 自动将在工作表中进行输入的葛洲坝更正为三峡(14) Beep 让计算机发出声音(15) 返回错误代码(16) MsgBox IMEStatus 获取输入法状态(17) Date = #6/6/2006#Time = #6:16:16 AM# 将系统时间更改为2006年6月6日上午6时16分16秒(18) =
11、Not 切换是否能利用鼠标中间的滑轮放大/缩小工作表(19) = True 显示任务栏中的窗口,即各工作簿占用各自的窗口(20) = True 显示窗口上的滚动条(21) = Not 切换是否显示编辑栏(22) (xlDialogPrint).Show 显示打印内容对话框(23) = xlToRight 设置按Enter键后单元格的移动方向向右(24) 显示打开对话框(25) 打开超链接文档(26) Mode:=xlReadOnly 将当前工作簿设置为只读(27) 将当前工作簿添加到收藏夹文件夹中(28) 在当前工作表中执行拼写检查(29) userinterfaceonly:=True 保护
12、当前工作表(30) = 在当前工作表的左侧页眉处打印出工作簿的完整路径和文件名(31) Worksheets(Sheet1).Range(A1:G37).Locked = FalseWorksheets(Sheet1).Protect解除对工作表Sheet1中A1:G37区域单元格的锁定以便当该工作表受保护时也可对这些单元格进行修改(32) Worksheets(Sheet1).PrintPreview 显示工作表sheet1的打印预览窗口(33) Enablechanges:=False 禁用显示在Excel的“打印预览”窗口中的“设置”和“页边距”按钮(34) = True 在打印预览中显
13、示网格线 = True 在打印预览中显示行列编号(35) 开启数据记录单(36) Worksheets(Sheet1).Columns(A).Replace _What:=SIN, Replacement:=COS, _SearchOrder:=xlByColumns, MatchCase:=True 将工作表sheet1中A列的SIN替换为COS(37) Rows(2).Delete 删除当前工作表中的第2行Columns(2).Delete 删除当前工作表中的第2列(38) before:=ActiveCell 在当前单元格左侧插入一条垂直分页符 before:=ActiveCell 在当
14、前单元格上方插入一条垂直分页符(39) = 14 将当前工作表窗口滚动到第14行 = 13 将当前工作表窗口滚动到第13列(40) 关闭当前窗口(41) 获取当前窗口中的窗格数(42) Worksheets(sheet1).Range(A1:D2).CreateNames Top:=True 将A2至D2的单元格名称设定为A1到D1单元格的内容(243) listarray:=Range(A1:A8) 自定义当前工作表中单元格A1至A8中的内容为自动填充序列(44) Worksheets(sheet1).Range(A1:B2).CopyPicture xlScreen, xlBitmap 将
15、单元格A1至B2的内容复制成屏幕快照(45) 删除所选区域的所有链接Columns(1). 删除第1列中所有的链接Rows(1). 删除第1行中所有的链接Range(A1:Z30). 删除指定范围所有的链接(46) Anchor:=ActiveCell, _Address:=C:WindowsSystem32, ScreenTip:=按下我,就会开启Windows计算器, TextToDisplay:=Windows计算器 在活动单元格中设置开启Windows计算器链接(47) = Shell(C:WindowsSystem32, vbNormalFocus) 开启Windows计算器(48)
16、 (1).AutoFilter 打开自动筛选。若再运行一次,则关闭自动筛选(49) 开启/关闭所选区域的自动筛选(50) 关闭自动筛选(51) 检查自动筛选是否开启,若开启则该语句返回True(52) (A).ColumnDifferences(Comparison:=ActiveSheet. _Range(A2).Delete 在A列中找出与单元格A2内容不同的单元格并删除(53) (A6).ClearNotes 删除单元格A6中的批注,包括声音批注和文字批注(54) (B8).ClearComments 删除单元格B8中的批注文字(55) (A1:D10).ClearFormats 清除单
17、元格区域A1至D10中的格式(56) (B2:D2).BorderAround ColorIndex:=5, _Weight:=xlMedium, LineStyle:=xlDouble 将单元格B2至D2区域设置为蓝色双线(57) Range(A1:B2).Item(2, 3)或Range(A1:B2)(2, 3) 引用单元格C2的数据Range(A1:B2)(3) 引用单元格A2(58) (1, 1). = TRUE 设置字体加粗(1, 1). = 24 设置字体大小为24磅(1, 1). = 3 设置字体颜色为红色(1, 1). = TRUE 设置字体为斜体(1, 1). = Times
18、 New Roman 设置字体类型(1, 1). = 3 将单元格的背景色设置为红色(59) (C2:E6).AutoFormat Format:=xlRangeAutoFormatColor3 将当前工作表中单元格区域C2至E6格式自动调整为彩色3格式(60) (xlCellTypeLastCell) 选中当前工作表中的最后一个单元格(61) 选定包含活动单元格的整个数组单元格区域.假定该单元格在数据单元格区域中(62) = ; 红色 将当前单元格数字格式设置为带3位小数,若为负数则显示为红色(63) IsEmpty 判断活动单元格中是否有值(64) = LTrim 删除字符串前面的空白字符
19、(65) Len 获取活动单元格中字符串的个数(66) = UCase 将当前单元格中的字符转换成大写(67) = StrConv, vbLowerCase) 将活动单元格中的字符串转换成小写(68) (C1).AddComment 在当前工作表的单元格C1中添加批注(69) Weekday(Date) 获取今天的星期,以数值表示,1-7分别对应星期日至星期六(70) (A1).AutoFill Range(Cells(1, 1), Cells(10, 1) 将单元格A1的数值填充到单元格A1至A10区域中(71) DatePart(y, Date) 获取今天在全年中的天数(72) = Dat
20、eAdd(yyyy, 2, Date) 获取两年后的今天的日期(73) MsgBox WeekdayName(Weekday(Date) 获取今天的星期数(74) = Year(Date) 在当前单元格中输入今年的年份数 = Month(Date) 在当前单元格中输入今天所在的月份数 = Day(Date) 在当前单元格中输入今天的日期数(75) = MonthName(1) 在当前单元格中显示月份的名称,本句为显示一月(76) = Hour(Time) 在当前单元格中显示现在时间的小时数 = Minute(Time) 在当前单元格中显示现在时间的分钟数 = Second(Time) 在当前单
21、元格中显示现在时间的秒数(77) (1).Delete 删除当前工作表中的第一个形状(78) 获取当前工作表中形状的数量(79) (1). 改变当前工作表中第一个艺术字的方向(80) (1). = True 将当前工作表中第一个艺术字的字体设置为斜体(81) 三峡, _Arial Black, 22#, msoFalse, msoFalse, 66#, 80).Select 在当前工作表中创建一个名为三峡的艺术字并对其进行格式设置和选中(82) BeginY:=10, EndX:=250, _EndY:=100).Select 在当前工作表中以(10,10)为起点(250,100)为终点画一条
22、直线并选中(83) _Left:=70, Top:=40, Width:=130, Height:=72).Select 在当前工作表中画一个左上角在(70,40),宽为130高为72的三角形并选中(84) _Left:=70, Top:=40, Width:=130, Height:=72).Select 在当前工作表中画一个以点(70,40)为起点,宽130高72的矩形并选中(85) _Left:=70, Top:=40, Width:=130, Height:=72).Select 在当前工作表中画一个左上角在(70,40),宽为130高为72的椭圆(86) (1). = RGB(0,
23、0, 255) 将当前工作表中第一个形状的线条颜色变为蓝色(87) (2). = RGB(255, 0, 0) 将当前工作表中第2个形状的前景色设置为红色(88) (1).Rotation = 20 将当前工作表中的第1个形状旋转20度(89) msoFlipHorizontal 将当前选中的形状水平翻转 msoFlipVertical 将当前选中的形状垂直翻转(90) msoThreeD1 将所选取的形状设置为第1种立体样式(91) (1). = 20 将当前工作表中第一个立体形状的深度设置为20(92) (1). = RGB(0, 0, 255) 将当前工作表中第1个立体形状的进深部分的颜
24、色设为蓝色(93) (1). = 60 将当前工作表中的第1个立体形状沿X轴旋转60度(1). = 60 将当前工作表中的第1个立体形状沿Y轴旋转60度(94) = msoFalse 将所选择的立体形状转换为平面形状(95) 在形状中让指定的连接符起点脱离原来所连接的形状(96) (1).PickUp 复制当前工作表中形状1的格式(97) 260, 160, 180, 30). = 在工作簿中新建一个文本框并输入内容(98) 20, 80, 100, 200). = 在当前工作表中建立一个水平文本框并输入内容(99) d:, True, True, 60, 20, 400, 300 在当前工作
25、表中插入一张d盘中名为sx的图片(100) xl3DArea 将当前图表类型改为三维面积图*excelvba应用示例之语句(101) 清除程序运行过程中所有的错误工作簿(102) (“Last Save Time”)或 Save Time”) 返回上次保存工作簿的日期和时间(103) (Last Print Date)或 Print Date”) 返回上次打印或预览工作簿的日期和时间(104) 关闭所有打开的工作簿(105) (xlExcelLinks)(1) 返回当前工作簿中的第一条链接(106) 返回工作簿代码的名称(107) 返回当前工作簿文件格式代码(108) 返回当前工作簿的路径(注
26、:若工作簿未保存,则为空)(109) 返回当前工作簿的读/写值(为False)(110) 返回工作簿的存储值(若已保存则为False)(111) = False 隐藏工作簿 = True 显示工作簿 注:可与用户窗体配合使用,即在打开工作簿时将工作簿隐藏,只显示用户窗体.可设置控制按钮控制工作簿可见*工作表(112) (B).Insert 在A列右侧插入列,即插入B列(E).Cut(B).Insert 以上两句将E列数据移至B列,原B列及以后的数据相应后移(B).Cut(E).Insert 以上两句将B列数据移至D列,原C列和D列数据相应左移一列(113) 计算当前工作表(114) (“she
27、et1”).Visible=xlSheetHidden 正常隐藏工作表,同在Excel菜单中选择“格式工作表隐藏”操作一样(“sheet1”).Visible=xlSheetVeryHidden 隐藏工作表,不能通过在Excel菜单中选择“格式工作表取消隐藏”来重新显示工作表(“sheet1”).Visible=xlSheetVisible 显示被隐藏的工作表(115) (1).ProtectContents 检查工作表是否受到保护(116) Count:=2, _Before:=(2) 或 (2), , 2 在第二个工作表之前添加两个新的工作表(117) (3).Copy 复制一个工作表到新的工作簿(118) (3).Copy (2) 复制第三个工作表到第二个工作表之前(119) = 20 改变工作表的列宽为20 = _ 将工
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1