gpt4 book ai didi

与 Excel 相比,Python 在 VB .Net 中的使用

转载 作者:行者123 更新时间:2023-11-28 19:26:30 25 4
gpt4 key购买 nike

我遇到了一个有趣的问题,我可以在 excel 实例中轻松利用 VB 中的 python 代码,如下所述:Calling python script from excel/vba

但是,当我在 Visual Studio 中以某种形式模仿完全相同的代码结构时,pyscript.language = "python"行失败。有谁知道是否可以在 VB .Net 中使用 MSScriptControl.ScriptControl 来像在 excel 中那样控制 python?这比为我的 python 脚本设置 com 对象要容易得多。

示例代码(需要添加microsoft script control 1.0和excel对象库):

Imports Microsoft.Office.Interop

Public Class Form1
Dim WithEvents PyScript As MSScriptControl.ScriptControl
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim xlApp As New Excel.Application
xlApp.Visible = True
Dim xlwbook As Excel.Workbook = xlApp.Workbooks.Add(Excel.XlWBATemplate.xlWBATWorksheet)
Dim xlSheet As Excel.Worksheet = CType(xlwbook.Worksheets(1), Excel.Worksheet)

If PyScript Is Nothing Then
PyScript = New MSScriptControl.ScriptControl
PyScript.Language = "python"
PyScript.AddObject("Sheet", xlSheet)
PyScript.AllowUI = True
End If
PyScript.ExecuteStatement("Sheet.cells(1,1).value='Hello'")


End Sub
End Class

最佳答案

根据这个http://msdn.microsoft.com/en-us/library/aa227633(v=vs.60 ) scriptcontrol 是一个 VS6 项目,这意味着它可能与更高版本不完全兼容。还有一个上下文问题,因为这两种环境(Windows 窗体和 Excel)在基本方面是不同的,所以在一个环境中可能的事情在另一个环境中并不总是可能的。

此外,仔细检查给定示例中的前四个步骤并确保您可以从 Excel 执行此操作也很值得。

关于与 Excel 相比,Python 在 VB .Net 中的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10404833/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com