Tag: windows 7

创build绝对目录> 256个字符的文件夹树?

我有一个Excel VBAmacros,基于Excel文件创build一个文件夹树。 我目前的问题是,每当绝对目录变得非常长时,我似乎都会遇到错误。 该程序将抛出运行时错误76(未findpath)。 我有一种感觉,这是因为脚本引用超过256个字符的绝对path。 有没有解决这个问题? 或者是我唯一的select缩短文件夹名称,从而绝对pathstring? 编辑 我使用的代码如下: Dim asheet As Range, r As Range, c As Range Dim fPath As String, tmp As String Set asheet = ActiveSheet.UsedRange For Each r In asheet.Rows fPath = DEST_FOLDER For Each c In r.Cells tmp = Trim(c.Value) If Len(tmp) = 0 Then Exit For Else tmp […]

ClosedXML Excel按多列中的值筛选行

我有一个Excel文件,有几千行和最多“BP”的列。 我需要通过列C和BP中的特定值来过滤所有这些行。 我按照下面的代码testing了ClosedXML中的filterfunction。 当我将一个filter应用到一列时,所有工作都很好,数据保存在新文件中。 当我尝试应用两个filter时,执行的最后一个是应用的filter。 我试图使用工作表作为范围/表,相同的过滤问题。 我最终创build了“行”expression式,工作,但第一行(标题)被过滤掉。 public static void Filter(string source, string newFile) { using (var workbook = new XLWorkbook(source)) { IXLWorksheet worksheet = workbook.Worksheet(1); int salesFoundCell = worksheet.FirstRow().Cells().First(c => c.Value.ToString() == "Sales Order Description").Address.ColumnNumber; int revenueFoundCell = worksheet.FirstRow().Cells().First(c => c.Value.ToString() == "Revenue recognition date").Address.ColumnNumber; //worksheet.RangeUsed().SetAutoFilter().Column(salesFoundCell).EqualTo("Equipment Sale"); //worksheet.RangeUsed().SetAutoFilter().Column(revenueFoundCell).EqualTo("00.00.0000"); //var rows = worksheet.RowsUsed().Where(r => r.CellsUsed().Any(c […]

我如何做一个相邻单元格的内容总和等于一个设定值

如果相邻单元格的内容等于另一个单元格,我将使用什么公式来计算一系列单元格的内容。 我可以举的例子是,如果我有一组引用购买订单的发票,我希望看到给定采购订单的发票总和,我已经包含了一个Excel电子表格的链接,我尝试了两种不同的公式,但似乎无法去处理我需要做的事情。 公式在第J栏中 https://www.dropbox.com/s/xw9aun1cblro9ix/Test.xlsx?dl=0

Windows 7下的ClickOnce / Excel-VSTO

我们在VS2010中开发了一个.Net 4.0 VSTO Excel AddIn,我们通过ClickOnce来部署。 我们的部署在Windows XP上看起来很好,但是在Windows 7上安装的时候是非常有问题的。这些问题似乎都与当AddIn需要通过Excel删除的时候有关(例如,它被Excel软删除了[例如由于失败等],然后用户通过Excel | Options | AddIns | Manage | COM AddIns对话框将其删除。 上述情况导致发生上述情况后重新安装AddIn的情况,它不会在Excel中公开,即Excel AddIns选项卡(如果安装了一个或多个AddIns,通常会出现)将永久消失。 当我们正在开发/debugging时,它变得更加棘手,因为我们正在重新命名/移除AddIn实例 – 以至于在Windows 7上开发VSTO不再可行 请注意,AddIn 不在硬删除(禁用)列表中 – 它已被删除。 我已经尝试安装/重新安装/卸载,重新启动,删除registry项(清理caching/卸载后),从C:\ Documents and Settings \\ Local Settings \ Apps \ 2.0中删除文件系统文件,清除caching(通过法师和/或rundll32 清除.NET下载的应用程序caching没有法师? )。 XP和Windows 7之间的行为似乎有明显的差异。 有没有人有类似的问题? 我能看到的唯一的select是一个完全成熟的MSI的部署项目,但是这不是一个完美的地方 – 需要本地pipe理员访问等 非常感谢 特拉维斯

Excel 2003中的工作代码在Windows 7中引发运行时错误

我已经在Windows XP 32位机器上的Microsoft Excel 2003中创build了下面的macros,当我按下刷新button时,我的电子表格就像它应该填充一样。 但是,当我在Windows 7机器的用户机器上运行这个,32位和64位我得到以下错误信息 “运行时错误'-2147467259(80004005)':[Microsoft] [ODBC Driver Manager]未find数据源名称未指定默认驱动程序” Private Sub CommandButton1_Click() Dim cmd As New ADODB.Command Dim conn As ADODB.Connection Dim prm As ADODB.Parameter Dim strConn As String Dim strSQL As String Dim Rst As ADODB.Recordset Dim WSP As Worksheet Dim lastRow As Long Dim ranges As range strConn = "Data Source=;Initial […]

为什么Excel移到Windows 7时找不到我的系统DSN?

我有一个VBA Excel工作簿(2007年),在我的Windows XP 32位机器上正常工作。 它使用ODBC通过系统DSN连接到PostgreSQL。 我最近搬到了64位的Windows 7机器,并安装了驱动程序,并build立了完全相同的系统DSN,但我没有连接。 我看到很多关于使用32位ODBC工具构buildDSN的参考,我想我已经做到了。 有什么想法吗?

在Windows 7中保存Excel加载项

我有一个Excel插件,我正在开发,在Windows XP中正常工作。 不过,我只是抱着Windows 7专业版,现在我无法保存此加载项,无论是手动从VBA编辑器或编程使用ThisWorkbook.Save 。 错误消息说 “Micrsoft Office Excel无法访问文件”C:\ Program Files \ Microsoft Office \ Office 12 \ LIBRARY [一些随机的8字符string,而不是我的加载项的名称]“。 其中一个对话框错误的可能的解释是“文件名或path不存在”。 我尝试closures加载项文件及其目录中的只读,以及使用“属性”对话框“解除阻止”文件(似乎是新的Windows 7function),但无济于事。 我如何获得这个基本的保存function在Windows 7中工作?

为Windows 7/64位创buildXLL Excel加载项(在Windows XP / 32上交叉编译)

我不是一个熟练的Windows程序员,但是我创build并维护了多年来32位Windows XP / Excel的XLL加载项。 我现在想创build一个Windows 7/64位版本,并遇到麻烦 – 我甚至不能让Generic.xll的例子工作。 这是我所做的最简单的版本 – 抱歉,这是漫长而迂腐的。 在我的Windows XP / 32计算机上,安装了Visual Studio 2010 Professional: 下载并安装了Microsoft Excel 2013 SDK。 开始菜单 – “打开Visual Studio x64交叉工具命令提示符(2010)” SET TYPE = RELEASE SET PLATFORM = x64 //我认为这是预设的 cd C:\ 2013 Office System Developer Resources \ Excel2013XLLSDK \ SAMPLES \ FRAMEWRK nmake //没有错误 cd C:\ 2013 Office […]

找不到Microsoft Forms 2.0对象库或FM20.DLL

我想用这个库来处理剪贴板。 我希望看到下面的截图,但我无法在我的参考库列表中find它。 我尝试添加VBA表单到我的Excel项目没有成功。 我怎样才能让它出现? 我的整个计算机W7和Excel 2016上没有FM20.DLL文件。

Excel VBA Msxml2.XMLHTTP.6.0与Msxml2.ServerXMLHTTP.6.0

我是一个自学成才的业余程序员,我是这个论坛的新手。 请多多包涵。 大约两年前,我写了一个简单的Excel vba程序来login到一个网站,并以.csv文件的forms获取客户声明。 我的程序利用GET和POST请求。 这个程序在三周前完全运行(为了我的需要),当时不幸的是我断了。 该程序无法通过最初的GET请求。 具体来说,它会在getReq.send行中断开。 我碰到这个职位: login到网站使用MSXML2.XMLHTTP而不是InternetExplorer.Application与VBA 在这里,我了解到您可以使用“Msxml2.XMLHTTP.6.0”而不是“Msxml2.ServerXMLHTTP.6.0”。 我相应地修改了我的代码,无需在Get请求之后parsingCookie,而且工作正常! 但我不知道。 即使我把它运用起来,我也不觉得在这个过程中学到了很多东西。 一些资料要注意: 我原来的程序打破了我的工作电脑(WindowsXP)。 考虑到这可能是一个XP的问题,无论如何在新机器的市场,我更新到一台运行Windows7的新电脑。 该程序仍然没有工作,虽然我收到了不同的错误信息。 我在Windows10电脑上运行我的代码,它运行良好。 我使用相同的代码连接到各种其他网站,它工作正常,不pipe什么操作系统。 所以,我的具体问题是: 为什么代码可以使用Msxml2.XMLHTTP.6.0而不是Msxml2.ServerXMLHTTP.6.0? 为什么代码首先会被打破? 为什么代码在一个特定的网站上工作,但没有另一个? 任何有识之士将不胜感激。 我已经附上我的代码(login信息X'd了)。 Sub RCGInquiry() Dim postReq, getReq, cookies Dim p0 As Integer, p1 As Integer, temp As String Dim result As String, respHead As String Set getReq = CreateObject("Msxml2.ServerXMLHTTP.6.0") 'Set getReq […]