PostHeaderIcon extraer un flash de excel, power point, word

Muchas veces la necesidad crea las cosas chingonas, bueno en este caso no yo lo cree, pero si estuve un buen rato navegando hasta que di con la información, y donde la encontré en taringa, estos cabrones de verdad que hacen honor a su slogan “Inteligencia colectiva”….

Bueno el tema va por aquí, muchas veces nos ha llegado a nuestro correo mayormente un archivo ya sea de excel, power point o de word un documento que trae consigo una animación en hecha en flash macromedia, y una de esas tantas nos parece interesante y queremos extraer dicho archivo de flash pero simplemente no podemos, bueno la solución esta aquí.

Hacemos lo siguiente

1. Abrimos nuestro excel

2. nos vamos a Menú->herramientas -> macro -> editor visual Basic ( otro camino mas fácil presionar Alt + F11)

3. Hacer clic en ver código, si no saben ver la imagen


4. cuando nos salga el espacio para código, pegamos este código tal y como está:

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

5. presionar F5 para ejecutarlo o nos vamos a menú ejecutar>Ejecutar Sub/user Form,
6. nos saldrá una ventana de abrir archivo,  seleccionamos el archivo  doc o xls en done esta incrustado el flash.
7. y seguidamente veremos un mensaje de donde se ha guardado el .swf

ya con esto hemos extraído el archivo a nuestra pc y podemos usarlo en cualquier otro lado

Todos los méritos a dniskav de taringa.net de ahí saque este pequeño tutorial yo solo le puse imágenes…

Nota: estuve revisando el código y en la linea

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

si queremos abrir archivos .ppt (power point) seria agregarlo y quedaría algo así

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

otra nota: por si tienen complicaciones al copiar el codigo, pueden descargar el codigo en un archivo de texto.

8 comentarios para “extraer un flash de excel, power point, word”

  • Recién casi me vuelvo loco tratando de encontrar la forma de hacer esto :D . Gracias!

  • Hugo MonsterID Icon Hugo dice:

    esta manera de extraer una animacion de un archivo de office esta buenisimo…

    en verdad muchas gracias!!! ^_^!!

  • juan MonsterID Icon juan dice:

    Funciona perfectamente. Muchísimas gracias por tu aportación. Saludos.

  • Pablo MonsterID Icon Pablo dice:

    No me reconoce la funcion GetOpenFilename del objeto Application :S

    un saludo

  • ROlo MonsterID Icon ROlo dice:

    Estuve intenando y me sale error de sintaxis y marca en azul
    tmpFileName = Application.GetOpenFilename(”MS Office File (*.doc;*.xls;*.ppt), *.doc;*.xls;*.ppt”, “Open MS Office file”)

  • Cooosmos MonsterID Icon Cooosmos dice:

    Hola Rolo y pablo, ya probaron descargando el archivo .txt que deje ahi? es muy probable que si copian el codigo directamente de la pagina se omita algun caracter o algun comando se separe,
    bueno de todos modos les dejo la liga otra vez, a mi paso cuando estuve haciendo una prueba, me falló y despues me di cuenta que era porque le hizo falta un “;”

    http://www.clubbycooosmos.com/yucatanchic/extraer-archivos-de-excel.txt

  • Luisid MonsterID Icon Luisid dice:

    Genial, gracias por el aporte
    Para quienes les da error de sintaxis, eso solo que al pegar el codigo en rojo las comillas cambian, hay que reemplazar por ” ” en linea señalada, y de ahi pa adelante todo bien.
    Suerte

  • Dniskav MonsterID Icon Dniskav dice:

    llevo mucho tiempo desarrollando cosas para web, empece con herramientas que necesitaba solo yo y fueron surgiendo cosas, ahora me da muchissimo gusto ver que mi investigacion a llegado a muchos lados y que a sido util; felicidaddes y gracias por los créditos, salud2 de colombia

Deja un comentario

Mas Populares
Buscar
Visitantes
  • © 2007-2008 (Cooosmos)
  • - Actualizado: 29/08/2010
  • - Visitas totales: 621,826
  • - Últimas 24 horas: 764