Office

输入'='作为单元格中的第一个字符

我有一个运行的VBA宏,通常需要将“=”作为单元格中的第一个字符。单元格中填充有“=国内”,“国内”等值。 现在我将“=”替换为“IS”作为quickfix,但是如果我能保持等号,我希望与使用诸如“”之类的符号的单元一致。当我尝试,Excel认为它是一个错误的语法的函数。我使用 Cells(row,col).Value = x ,其中 x 是可能或不可能的字符串以“=”开始,输入数据。 ..
发布时间:2017-09-04 00:57:06 Office

ADO正在截断Excel数据

我有一个功能,使用ADO从工作表的内容中获取ADODB记录集,如下所示: 函数WorksheetRecordset (workbookPath As String,sheetName As String)as adodb.Recordset Dim objconnection As New adodb.Connection Dim objrecordset As New adod ..
发布时间:2017-09-04 00:56:51 Office

VBA LastRow计算不行

我有一个自动过滤范围的工作表,以单元格 B3 开头。列 A 包含一些宏按钮,但实际上是空白的。前两行包含有关主范围数据的信息。 在VBA中,我使用我认为是确定工作表中最后一行的标准方法(在这种情况下,我不能依赖单个列上的 .End 方法): code> LastRow = Activesheet.Cells.Find(“*”,SearchOrder:= xlByRows,SearchD ..
发布时间:2017-09-04 00:56:03 Office

Excel通过工作表进行迭代

我有一个工作簿有许多表,有些我需要输入一个值,如果前面的单元格匹配一个给定的字符串。 我的代码适用于我需要的工作表,但是当它到达一些不需要的工作表时(它们中也有数据)会出错。 调试器亮点的行为 For Each r In Inectect(ActiveSheet.UsedRange,Range(“F:F”)我是一个VBA / Excel脚本的新手,对不起,如果这是明显的,但我搜索的网站 ..
发布时间:2017-09-04 00:55:06 Office

如何通过XSSF事件API评估excel公式

我正在使用Apache POI的事件API读取XLSX文件,即通过SAX解析器读取XLSX表的内容。我想知道如何使用XSSF事件API获取公式的计算值。 我知道这样做的方法是使用 FormulaEvaluator 类。但是由于FormulaEvaluator需要一个Workbook类的实例,所以我不想使用这种方法。 (我正在阅读包含百万行和100列的Excel文件,所以如果我创建该Excel ..
发布时间:2017-09-04 00:54:21 Office

使用powershell将多个xls转换为csv

我正在尝试使用powershell将多个excel文件(xls)转换为位于文件夹中的csv。 我可以转换单个文件,但需要帮助转换文件夹中的多个文件。 但需要建议如何转换多个文件。 $ ExcelWB = new-object -comobject excel.application $ Workbook = $ ExcelWB.Workbooks.Open(c:\temp\te ..
发布时间:2017-09-04 00:53:51 Office

在Excel中插入行X行

我有一长串代码,如008.45等,需要多行文本来解释。我有代码列表,我想知道如何自动插入一行,第五行。例如 1 2 3 4 5 6 7 8 9 10 ... 100 每五行我想插入一个给定数量的我选择的行。我该怎么做?谢谢 解决方案 您需要使用如下循环: for i = 1 to 100 step 1 if i ..
发布时间:2017-09-04 00:53:35 Office

检测已安装的Excel版本(和Service Pack)

我需要能够从我正在开发的一些.NET代码中检测我的机器中安装的哪个版本的Excel。我目前正在使用 Application.Version ,但不提供有关Service Pack的信息。 我最好指导远离这样的事情: http://www.mvps.org/ access / api / api0065.htm 欢迎托管代码 解决方案 公共共享函数GetExcelVersion ..
发布时间:2017-09-04 00:52:32 Office

Excel oledb连接到Ms-Access数据库锁访问db

我有一个excel电子表格,使用ole db连接连接到MS-Access 2003数据库。当我刷新电子表格中的数据并打开我的ms访问数据库时,它表示数据库是只读的。如果我关闭电子表格,然后打开MS-Access DB,那么它将以写入模式打开。以下是Excel电子表格中使用的连接字符串。 Provider = Microsoft.Jet.OLEDB.4.0; Password =“”;用户I ..
发布时间:2017-09-04 00:52:17 Office

访问共享网络文件夹

我需要通过VBA访问网络文件服务器上托管的文件夹。该文件夹只能通过一个服务帐户(不同于普通用户帐户)进行访问,我有用户名和密码。 通过UI我可以看到该文件夹并将其映射为本地驱动器,但为了以书面形式访问它,我需要从Windows注销并通过服务帐户登录。 有没有办法访问在正常用户会话期间的网络文件夹,但在VBA代码中硬编码用户名和pwd? 我尝试将文件夹映射为本地驱动器: 设置 ..
发布时间:2017-09-04 00:51:53 Office

VBA中的API计时器 - 如何使安全

我在各种场合阅读了API定时器在VBA中的风险,如果在定时器运行时编辑单元格,Excel将会崩溃。但是由于Jordan Goldmeier, http://optionexplicitvba.wordpress.com 的代码似乎没有这个问题。它使用定时器来淡出一个弹出窗口,而在其衰落的同时,我可以单击并在单元格和公式栏中输入文本,没有任何问题。 API定时器安全的,什么时候没有?有没有一些 ..
发布时间:2017-09-04 00:51:25 Office

在vba中修剪前导和尾随空格的功能

我已经检查了很多建议,修改领先和vba中的尾随空格(excel,顺便提一下)。 我已经找到了这个解决方案,但它也修剪了åäö(也是上限),我在正则表达式中太弱了查看原因: 函数MultilineTrim(Byval TextData) Dim textRegExp 设置textRegExp = new regexp textRegExp.Pattern =“\s {0,}(\S ..
发布时间:2017-09-04 00:51:11 Office

在循环中更改For循环的长度

我有一堆代码经过一组数据,然后找到数据进入下一个值步骤的行(5个单位增量)。当找到此位置时,插入5行,并在这些行中,在该数据块的范围内计算STDEVP,MIN,MAX和AVERAGE。输入完毕后,循环继续通过数据,直到它到达最后一行(lastRow变量)。代码如下所示: Sub sectionBlocking() Dim lastRow As Integer Dim lastColu ..
发布时间:2017-09-04 00:50:57 Office

Microsoft Office Interop Assembly参考

我有一个Visual Studio 2005中开发的应用程序,我正在使用ClickOnce进行部署。我的解决方案包含两个项目 - 一个用VB编写的用户界面层和一个用C#编码的类库。我的C#类库有一些代码使用Outlook和Excel Interop程序集(Microsoft.Office.Interop.Outlook和Microsoft.Office.Interop.Excel,版本11)。这是 ..

从VBA中的完整文件名中提取路径

我在VBA中新增了下面的代码,我的代码不起作用, Dim nPath1()As String nPath1()= Split(nPath,“\”) '以整数形式声明路径 Dim path As Integer '获取数组长度 path = UBound(nPath1()) Dim lastname As String 'For Loop For i = 0 To path-1 ..
发布时间:2017-09-04 00:50:13 Office

何时使用range.value?

这应该很简单,但我不能找到一个明确的答案。 如果我正在读/写一个范围,我什么时候使用范围名称,什么时候使用Ineed来使用range.value?如果范围是一个单元格还是多个单元格,是否重要?变量的类型是什么关系?还是数据类型在范围内?有没有最佳实践? 例如,我应该写 `a = Range(“Test”)` 或者我应该写 `a = Range(“Test” ..
发布时间:2017-09-04 00:49:58 Office

Excel MAXIF功能或仿真?

我在 excel 中有一个中等大小的数据集我想从中提取B列中值的最大值,但仅提供满足特定标准的A列中的单元格。 所需的功能类似于 SUMIF 或 COUNTIF ,但是这两个都不需要返回数据。没有一个 MAXIF 函数;如何模拟一个? 解决方案 您可以使用数组公式。在要计算最大值的单元格中输入: = Max(If([test],[if true],[if false]),其中用方括号 ..
发布时间:2017-09-04 00:49:07 Office