相关疑难解决方法(0)

有没有办法在Excel-VBA中调用Python代码?

我有一个包含宏的Excel文件(Main.xlsm).我有一个Python文件(python.py)来生成一个辅助Excel文件(sub.xlsx),我将在Main.xlsm文件的宏中进一步调用它.这个由python.py运行生成的sub.xlsx文件保存在同一个工作目录中.

现在,我想使这个python.py的Main.xlsm宏的运行过程中被执行,然后使用这个XLSX文件.我基本上想要减少外部执行python.py的步骤.那是否有命令?我是VBA的新手.

python excel vba excel-vba

17
推荐指数
3
解决办法
1万
查看次数

从.NET调用Python

我有一些用Python编写的代码,不能转换为.NET语言.我需要从.NET WinForms应用程序中调用其中一个函数.

现在,我通过将Python脚本作为单独的进程启动并将参数作为命令行参数传递给它来实现.它有效,但我不喜欢这个解决方案.我想将它改进为更好的一个.

有没有更好的方法.py从.NET应用程序调用脚本的功能?最好的方法是什么?

注意:IronPython不是此Python脚本的选项

.net c# python python.net

16
推荐指数
4
解决办法
2万
查看次数

使用pywin32的可移植Python com服务器

是否可以在不需要提升的情况下运行comserver.

例如,我能够从Python.TestServer(下面)运行代码,但它需要提升.

Python.TestServer代码位于:从.NET使用Python COM服务器

是否可以运行不需要提升的com服务器,以便我可以在没有管理密码的情况下运行com对象.

例如

import pythoncom
from win32com.server import localserver

class demoObj(object):
    _reg_clsctx_ = pythoncom.CLSCTX_LOCAL_SERVER
    _reg_clsid_ = "{FA501660-8BB0-42F6-842B-A757FA3098DC}"
    _reg_desc_ = "Demo COM server"
    _reg_progid_ = "Python.Demo"
    _public_methods_ = ['hello']

def hello(self, who):
    return "Hellow " + who

localserver.serve('B83DD222-7750-413D-A9AD-01B37021B24B')
Run Code Online (Sandbox Code Playgroud)

我已经尝试了上面的代码,但它说 pywintypes.com_error: (-2147221005, 'Invalid class string', None, None)

如何为本地服务器创建有效的类字符串?

示例vba:

Sub demodemo()
    Set obj = CreateObject("Python.Demo")
    Debug.Print obj.Hello("World")
End Sub
Run Code Online (Sandbox Code Playgroud)

python vb.net winapi vba pywin32

12
推荐指数
1
解决办法
938
查看次数

标签 统计

python ×3

vba ×2

.net ×1

c# ×1

excel ×1

excel-vba ×1

python.net ×1

pywin32 ×1

vb.net ×1

winapi ×1