您还没有绑定微信,更多功能请点击绑定

从EXCEL里提取FLASH的方法——宏的应用

想必大家都经常收到flash吧,很多flash都是添加在excel里,不打开excel就没法观看。
而很多人和我一样喜欢把flash单独存放,存成.swf或者.exe格式,下面就告诉大家怎么在excel里提取出flash。

1、打开EXCEL中的“控件工具箱”2、点击“控件工具箱”上的“查看代码”按钮,进入代码编辑模板。3、在编辑模板中插入如下代码:
Sub ReadData()Dim tmpFileName As String, FileNumber As Integer, OldName As StringDim myFileId As LongDim myArr() As ByteDim i As LongDim MyFileLen As Long, myIndex As LongDim swfFileLen As LongDim swfArr() As BytetmpFileName = Application.GetOpenFilename("office File(.doc;.xls),.doc;.xls", , "确定要分析的office文件")If tmpFileName = "False" Then Exit SubmyFileId = FreeFileOpen tmpFileName For Binary As #myFileIdMyFileLen = LOF(myFileId)ReDim myArr(MyFileLen - 1)Get myFileId, , myArr()Close myFileIdApplication.ScreenUpdating = FalseOldName = Left(tmpFileName, Len(tmpFileName) - 4)i = 0Do While i < MyFileLen If myArr(i) = &H46 Then If myArr(i + 1) = &H57 And myArr(i + 2) = &H53 Then swfFileLen = CLng(&H1000000) myArr(i + 7) + CLng(&H10000) myArr(i + 6) + CLng(&H100) * myArr(i + 5) + myArr(i + 4) ReDim swfArr(swfFileLen - 1) For myIndex = 0 To swfFileLen - 1 swfArr(myIndex) = myArr(i + myIndex) Next myIndex myFileId = FreeFile tmpFileName = OldName & i & ".swf" Open tmpFileName For Binary As #myFileId Put #myFileId, , swfArr Close myFileId i = i + swfFileLen + 8 Else i = i + 3 End If Else i = i + 1 End IfLoopMsgBox "以" & OldName & "1-n.swf 名字保存"End Sub
4、按F5运行代码(最后的End Sub只有一个哦)。5、选择要打开的EXCEL表格,就可将FLASH文件导出,导出位置与EXCEL位置一样。

0 个评论

游客无法查看评论和回复, 请先登录注册

发起人

推荐文章

文章状态

  • 发布时间: 2009-02-05 08:21
  • 浏览: 1392
  • 评论: 0
  • 赞: 0