大约15年前,我使用C-API为Excel编写.xll加载项,主要用于电子表格公式(复杂且耗时的计算),并使用C++编写(这是我最喜欢的语言)。随后,我用C#包装器做了一些事情。
经过很长一段时间( Excel和Visual都在快速前进)之后,我再次考虑构建一个加载项,以便使用编译后的代码进行冗长的优化,而不是使用VBA脚本。优化包括将大量数据从工作表中取出,然后进行处理,然后将结果写回工作簿(我想稍后绘制它们等等)。
注意:这是我自己用的,我不打算分发任何解决方案。
在伪Excel代码中,我想要的内容如下:
Dim obj as MyOptimizer
Dim rngInputData as
关于问题的标题,我有一个问题:
简单介绍一下我的情况:我在spyder中使用python,我的代码(数百行)包括一个彭博-python。因为我使用的是多个滴答器,所以代码的执行时间大约是24秒。代码将从我想要执行python代码的同一张表中导入一些数据。最后,代码将将一些数据写入另一个Excel文档中。简单地说: Python代码从Excel文档A中提取数据,处理数据并将其写入Excel。最后,Excel文档A从Excel中提取数据。
我阅读和观看了几乎所有关于这个主题的文章/视频(没有一个解决了我的问题),目前在VBA中使用了以下代码:
Sub RunPythonScript()
Dim
我需要将大量的结构化记录(可能是数千亿)存储在数据库中。许多传感器将连续地写入数据,插入速率很高(最高可达100 K行/秒)。
数据结构良好,似乎与Postgres这样的结构化数据库很好地匹配。但是,我担心性能不足以满足需要摄入的数据量。
此外,我不需要关系数据库的所有特性(不需要完全的SQL支持)。数据将编写一次,并使用基本查询(如:
SELECT time, value FROM data WHERE time>1000 AND time<2500 AND sensor_location="home" ORDER BY time
也就是说,在给定传感器(或一组传
我在Excel中创建了一个宏,用于合并重复的行:
其想法是,如果2行或更多行具有相同的A、B、C列,则我合并它们的D列,删除ABC重复列。我需要这样做,但要检查更多的专栏。
我的宏如下所示:
processingRow = 2
Do Until Cells(processingRow, 1).Value = ""
i = processingRow + 1
Do Until Cells(i, 1).Value = ""
If Cells(processingRow, 8) = Cells(i, 8) And _
我是一个巨大的KISS原则的粉丝(保持它简单)和一个excel用户的VBA很长时间。然而,我能找到的关于VBA与VSTO (Visual Studio Tools for Office)的所有文章似乎都非常复杂。
首先,我受够了Excel内置的非常糟糕的IDE,我正在寻找新的IDE。使用Visual Studio作为IDE的VSTO似乎是唯一的选择。
因此,我试图了解VBA和VSTO之间的区别,以了解是否值得我学习使用VSTO?
使用软件:Visual Basic Net 2013 Microsoft Excel 2016
与从Visual代码执行相同VBA所需的时间相比,直接从VBA编辑器执行代码时遇到了问题。即使我编写了一个简单的
Sub myCode()
MsgBox "Hello World!", vbOkOnly
End Sub
在VBA中,当我从Visual代码执行时,启动执行需要花费太多的时间。
例如,当我在VBA编辑器中按“F5”键时,执行代码和显示MsgBox只需不到1秒的时间。当我从Visual .Net运行完全相同的代码时,开始执行代码大约需要30秒。
我在Visual中使用
我想将两个excel文件(Book1.xlsx和Book2.xlsx)导入到access数据库表(Table1)中,其中有一个额外的列指示数据源:
1.xlsx
Name Age
Paul 30
2.xlsx
Name Age
John 20
Table1
Name Age Source
Paul 30 Book1
John 20 Book2
通过Access VBA或Excel VBA自动执行此操作的最佳方法是什么?我将有几十个excel文件,每个文件包含约50K行。
是否必须打开每个excel文件才能运行Excel VBA宏,然后使用ADODB
我有一个单元格,它包含多行文本,由回车返回CHAR(10)分隔。
Cell A1 = "First line of text
Second line of text
Third line"
我需要知道最长行(19)的长度,使用的公式不是VBA (此excel不能有宏)。
如果有人能提供任何帮助来解决这个问题,并在理想情况下解释它在做什么,我会很感激,因为我真的想了解我所投入的东西,而不仅仅是复制/粘贴,我认为自己是一个高级的excel用户,在VBA中花了我几分钟的时间,并且以前创建过复杂的公式,但我从未能够理解excel公式中的数组。
我的唠叨:
我猜想,在没有拆分vba函数
我在Excel中有一个带注释的字段。人们在单元格中输入带换行符的数据(ALT + ENTER)。 有没有办法通过Excel VBA将它通过ADODB导入SQL Server 2016,这样我也可以从数据库中以多行的形式再次检索它? 例如:在Excel中,我有一个带有值的多行单元格: TEST
TEST
TEST 当我再次通过数据库检索它时,它将显示TESTTESTTEST,我希望显示与在Excel中相同。 我都试过了 rs![comment] = cell value 和 t-sql (simplified): insert into comment_table (comment) VA
我正在使用Excel文件目录来获取有关每个文件的信息。我正在尝试使用C# Excel互操作来收集与其中一些文件相关联的VBA宏的信息。这方面的代码如下所示。问题是,没有一个excel文件可以编程访问宏。我可以在文件的本地副本上手动切换,但我目前只有读取文件目录的权限。是否可以在没有写权限的情况下临时更改代码中的编程访问设置(读取VBA代码,而不是进行任何更改)?
另外,我只知道如何手动对编程访问进行更改(通过每个excel文件中的设置)。考虑到我最终可能只需要获得读/写访问权限,我是否可以在批处理过程中这样做,以节省手动打开和关闭文件的大量时间?
VBA.VBProject p