Saltar al contenido

¿Cómo llamar al script de python en excel vba?

Olivia, parte de este equipo, nos ha hecho el favor de escribir esta sección porque controla perfectamente dicho tema.

Solución:

Prueba esto:

RetVal = Shell(" " & "")

O si la secuencia de comandos de python está en la misma carpeta que el libro de trabajo, puede intentar:

RetVal = Shell(" " & ActiveWorkBook.Path & "")

Todos los detalles dentro <> se van a dar. <> – indica campos modificables

Supongo que esto debería funcionar. Pero, de nuevo, si su secuencia de comandos va a llamar a otros archivos que se encuentran en carpetas diferentes, puede causar errores a menos que su secuencia de comandos lo haya manejado correctamente. Espero eso ayude.

Me acabo de encontrar con este viejo post. Nada de lo mencionado anteriormente realmente funcionó para mí. Probé el siguiente script y funcionó bien en mi sistema. Compartiendo aquí, en beneficio de otros que vienen aquí después de mí.

Sub RunPython()

Dim objShell As Object
Dim PythonExe, PythonScript As String

    Set objShell = VBA.CreateObject("Wscript.Shell")

    PythonExe = """C:your_pathPythonPython38python.exe"""
    PythonScript = "C:your_pathfrom_vba.py"

    objShell.Run PythonExe & PythonScript

End Sub

Hay un par de maneras de resolver este problema

Pyinx: una herramienta bastante liviana que le permite llamar a Python desde el espacio de proceso de Excel http://code.google.com/p/pyinex/

Usé este hace unos años (cuando se estaba desarrollando activamente) y funcionó bastante bien

Si no te importa pagar, esto se ve bastante bien.

https://datanitro.com/product.html

Aunque nunca lo he usado


Aunque si ya está escribiendo en Python, ¿tal vez podría dejar Excel por completo y hacer todo en Python puro? Es mucho más fácil mantener una base de código (python) en lugar de 2 (python + cualquier superposición de Excel que tenga).

Si realmente tiene que exportar sus datos a Excel, incluso hay algunas herramientas bastante buenas para eso en Python. Si eso puede funcionar mejor, hágamelo saber y conseguiré los enlaces.

Te mostramos las reseñas y valoraciones de los usuarios

Agradecemos que desees estimular nuestro trabajo escribiendo un comentario o dejando una valoración te damos las gracias.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *