Walker News

A capsule of walker’s experience in life…

How To Extract SWF Flash From Excel or Word

Besides watching Flash videos (FLV files), you should have seen or played some Flash animation game as well (SWF files, a.k.a. Shockwave flash).

And most of the time, you received SWF Flash animation in Microsoft Office document. Very likely, the SWF animation file is embedded in Office Excel.


The reason of embedding SWF animation file in Office document is probably that majority of users is running on Windows / MS Office, and MS Office can serve as a container to run or play the SWF file.

(If you received an un-embedded SWF file, you might able to open and play the SWF animation in web browser that installed with Shockwave Flash add-on)

While the SWF flash appears as an embedded file in Office Excel or Word, you might want to extract or retrieve the embedded SWF flash for your blog.

However, there is no intrinsic or built-in function to extract / retrieve embedded SWF Flash animation from Microsoft Office document files. This is definitely true, that you won’t able to find this wanted feature in Office 2007 as well!

So, how could you do that in case you’re really wanted to do so? OK, here we go:

How to extract SWF Flash animation from Office Excel?

A simple VBA program (a.k.a Visual Basic for Applications) can extract the embedded SWF Flash animation file in less than a minute or so.

The VBA / guide has been tested in Office 2003 Professional, and it should be working perfectly in any Office versions / editions too (e.g. the latest Office 2007), provided the Office system has installed the VBA components.

  1. Open a new Microsoft Excel document,
     
  2. Click the Tools menu, Marco, Visual Basic Editor. You can also press the ALT+ F11 hotkey to bring up the VBA editor,
     
  3. While in MS Visual Basic editor, click the View Code icon on the upper-left panel,

    VBA program to extract or retrieve embedded SWF Flash animation in Excel.
     

  4. Copy the VBA program source code at below here and paste it onto the VBA source code editor,
     
  5. Press F5 to execute the VBA source code,
     
  6. An Open File dialog box prompts you to select the Office Excel document that embed the SWF Flash animation file,
     
  7. A message box appears shortly after the Excel file is selected, with a message that says where the extracted SWF Flash animation file is saved in local hard disk!

The extracted SWF Flash animation file ended with SWF file extension, and it can be open/play in a web browser with Shockwave Flash addon (e.g. Flash9e.ocx in IE7).

The VBA source code used to extract or retrieve SWF Flash animation files that embedded in Microsoft Office Excel or Word:


Sub ExtractFlash()

Dim tmpFileName As String
Dim FileNumber As Integer
Dim myFileId As Long
Dim MyFileLen As Long
Dim myIndex As Long
Dim swfFileLen As Long
Dim i As Long
Dim swfArr() As Byte
Dim myArr() As Byte

tmpFileName = Application.GetOpenFilename("MS Office File (*.doc;*.xls), *.doc;*.xls", , "Open MS Office file")

If tmpFileName = "False" Then Exit Sub

myFileId = FreeFile

Open tmpFileName For Binary As #myFileId

MyFileLen = LOF(myFileId)

ReDim myArr(MyFileLen - 1)

Get myFileId, , myArr()

Close myFileId

Application.ScreenUpdating = False

i = 0

Do 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
         Exit Do

      Else
            i = i + 3
      End If

   Else
        i = i + 1
   End If

Loop

myFileId = FreeFile

tmpFileName = Left(tmpFileName, Len(tmpFileName) - 4) & ".swf"

Open tmpFileName For Binary As #myFileId

Put #myFileId, , swfArr

Close myFileId

MsgBox "Save the extracted SWF Flash as [ " & tmpFileName & " ]"

End Sub



Credit of the VBA code given to a Chinese blogger called Emily.

Bookmark and Share:
  • Facebook
  • StumbleUpon
  • Sphinn
  • Digg
  • Pownce
  • del.icio.us
  • Live
  • Google
  • YahooMyWeb
  • Slashdot
  • Furl
  • NewsVine
  • Reddit
  • Ma.gnolia
  • TailRank
  • Technorati
  • BlinkList
  • blogmarks
  • IndianPad
  • Haohao
Topic - Howto   Search - , , , , , , , , , , , , , ,

Similar Articles:
» How To Copy YouTube Video or FLV File From Google Chrome Cache Folder?
» SWF-Export v1.8.0.5: A Better SWF Extractor Freeware From Hungary!
» SWF-Extractor: A Hungarian Freeware To Extract SWF From Microsoft Excel And Word Document
» How To Insert Multiple Images In WordPress 2.6 Without Using Shortcode?
» How To Check Windows Last Boot Up Time
» How To Cut MP3 As Mobile Phone Ringtone
» Tweak Windows Media Player To Display Chinese Characters

Custom Search
Make your PC more useful by downloading the FREE Google Pack!

Latest Posts @ WalkerNews.net

↑ Grab this Headline Animator

Navigation:
» HOME - WalkerNews.net
« PREV  - Where Is IE7 Cache Folder
» NEXT  - Win A Windows Home Server Or XBox 360

8 Comments so far

  1. King Fisher May 29th, 2008 7:10 pm
    WalkerNews.net

    Bravo… excellent.. :)

  2. Chikz June 20th, 2008 5:38 pm
    WalkerNews.net

    Excellent!!!!!!!!!!!!!!!!

  3. WalkerNews.net

    [...] inserting the compressed executable program file as an embedded object in Microsoft Excel / Word, the Exchange server attachment filtering system automatically “allow” the email [...]

  4. akm August 1st, 2008 10:19 pm
    WalkerNews.net

    Very fine work..
    Great computer genius.

  5. raghu August 9th, 2008 10:00 pm
    WalkerNews.net

    hi,
    thanks very much.
    can you please explain the logic also. don’t really understand the binary part & other parts in it. why is it required? can you please explain it. PLEASE…
    thanks.
    regards
    Raghu

  6. Wally September 1st, 2008 2:07 am
    WalkerNews.net

    Thanks a lot for this works great

  7. WalkerNews.net

    [...] time ago, I wrote a post about how to extract SWF (Shockwave Flash) that embedded in Microsoft Excel or Word document. That’s not about [...]

  8. pax September 15th, 2008 9:39 pm
    WalkerNews.net

    excelent ……………….
    Thanks a lot for this works great

Appreciate your comments, but please be in topic.
Please use proper English with punctuation, from 12th of May 2008 onwards.
WalkerNews.net supports Gravatar (Web ID)