Articles of excel

构buildMFC自动化示例(使用OLE自动化访问Excel)。 无法编译

我正在尝试构buildhttp://support.microsoft.com/kb/178749/EN-US/中介绍的示例,以构build一个使用自动化以编程方式访问Excel的应用程序。 我有Visual C ++ 2005 / Visual Studio 2005.一些说明不完全匹配(主要是classwizard),但总的想法似乎是相同的。 问题:在使用“新类”来创build我的包装类后,我不会得到一个excel.h文件。 所以我不能像第13步指定的那样包含这个文件。我在windebug目录下得到了一个excel.tlh和一个excel.tli,但是这似乎不起作用。 我尝试了所有的订单 #include "stdafx.h" #include "debug/excel.tli" #include "debug/excel.tlh" 包括将这些文件中的一个留在编译之外,但是我仍然会遇到大量的编译错误。 以上#包括前5个编译错误: 1>c:\users\sniles\documents\visual studio 2005\source10\testole\testole\debug\excel.tli(14) : error C2653: 'Adjustments' : is not a class or namespace name 1>c:\users\sniles\documents\visual studio 2005\source10\testole\testole\debug\excel.tli(14) : error C2146: syntax error : missing ';' before identifier 'GetParent' 1>c:\users\sniles\documents\visual studio 2005\source10\testole\testole\debug\excel.tli(14) : error C2433: […]

LINEST函数模拟C#

我需要从LINEST Excel函数中获取信息。 我想知道是否有类似function的图书馆,或者如果有可能以某种方式在C#中使用本机Excel函数? 我正在使用MVS 2010和使用Windows窗体可能很重要。 我写了一个最小二乘估计函数,它只计算双因子模型的参数,但是我需要计算多于两个因子的模型的参数。 PS其实我没有谷歌的答案,我看到有人用包Microsoft.Office.Excel来计算必要的信息,但没有这样的导入在我的IDE。 我不想发明一个轮子,所以我很欣赏任何信息。 谢谢。 更新 :最后,我添加了一个Microsoft.Office.Excel引用到我的项目,并解决了我的问题。 源代码附在下面。 结果是2D Excel类似的数组。 代码写的很匆忙,所以这不是很好,需要修改。 我只希望它能帮助别人。 /如果您需要帮助,请告诉我 Microsoft.Office.Interop.Excel.Application xl = new Microsoft.Office.Interop.Excel.Application(); Microsoft.Office.Interop.Excel.WorksheetFunction wsf = xl.WorksheetFunction; List<double> x = new List<double> { 107, 109, 110, 113, 120, 122, 123, 128, 136, 140, 145, 150 }; List<double> y = new List<double> { 102, 105, 108, 110, […]

VBA在Windows7电脑被locking时closuresexcel文件

我有一个由6/7人使用的共享驱动器上的excel文件,但是一次只能有一个人编辑。 当一个人打开文件进行编辑,然后消失了一个小时的午餐,让其他用户打开并且不可编辑excel文件时,就会感到沮丧。 VBA是否有可能监听一个电台何时被locking,并相应地激活一个macros? 对不起,我没有发表任何我自己的尝试,因为我在这个级别的VBA中有一点点缺水。 任何可能帮助我开始的点都是非常有用的。

Python XLRD错误:公式/ tFunc未知FuncID:186

我被困在这一个,请帮我哦聪明的堆栈交换器… 我有一个函数使用xlrd来读取一个.xls文件,这个文件是我公司每几个月推出的一个文件。 该文件总是在相同的格式,只是与更新的数据。 我在过去的.xls文件中没有读取问题,但是最新版本的.xls文件没有被读入,并且产生这个错误: *** formula/tFunc unknown FuncID:186 我试过的东西: 我将新的.xls文件与旧的文件进行比较,看看是否可以发现任何差异。 没有我能find的。 我删除了文件中包含的所有macros(旧版本也有macros) 更新xlrd到版本0.9.3,但得到相同的错误 这些文件最初是.xlsm文件。 我打开它们并将它们保存为.xls文件,以便xlrd可以读取它们。这在以前版本的文件中工作得很好。 升级到xlrd 0.9.3后,我认为它支持.xlsx,我试图保存.xlsx文件as.xlsx,并试图读取它,但得到一个空白的错误信息 有用信息: Python 2.7 xlrd 0.9.3 Windows 7(不知道这是否重要,但…) 我的猜测是在xlrd不知道如何阅读的新文件中有一些公式。 有人知道FuncID:186是什么吗? 编辑:仍然没有线索在哪里去与此。 有人在这里遇到这个? 我尝试searchFuncID 186,看看它是一个Excelfunction,但无济于事…

奇怪的pythonsearchpath的行为,这里怎么了?

我们在Windows XP 32bit上有一个基于Excel 2003和Python 2.4的应用程序。 该应用程序由大量的Python函数组成,可以从许多Excel工作表中调用。 我们没有发现一个exception的行为,有时在这些调用的中间,python解释器会开始寻找模块,这些模块几乎可以肯定已经被加载并且在内存中。 我们知道这一点,因为我们能够将Sysinternal的进程监视器连接到进程,并观察到进程(被调用的时候)开始围绕一堆目录搜寻,并为某些.py文件find蛋。 显而易见的事情是要看是否pythonsearchpath已被修改,但我们发现情况并非如此。 这正是我们所期望的。 奇怪的是: 这种search行为被触发的场合似乎是随机的,也就是说,它不是每次都发生或者有任何明显的模式。 行为不会影响函数的结果。 无论文件search行为是否被触发,它都返回相同的值。 在J驱动器不包含这种文件夹的机器上,被扫描的文件夹是不存在的(例如J:/ python-eggs)。 自然procmon报告,这产生了一个文件找不到错误。 这一切都非常神秘,所以我不指望有人能够提供一个明确的答案,可能会出错。 我将不胜感激关于如何debugging这个问题的任何build议。 谢谢! 评论的答案 所有正在search的东西都是实际的,已知的Python文件,它们存在于主项目的.egg文件中。 奇怪的是,当他们被搜查的时候,那些特殊的模块已经被导入了。 他们必须记住这个过程才能工作。 是的,这会影响性能,因为有时候这种search行为试图打击networking驱动器。 同样,通过search不可能包含某些模块的鸡蛋,该过程被公司强制的病毒扫描程序中断。 这减慢了通常是无害的瞬间中断。 这是股票蟒2.4.4。 没有修改。

尝试自动分割数据在Excel中与VBA

我绝对没有经验的编程在Excel VBA以外,我写了一个function,添加一个数据标签,在我们的生产线几个星期后,主要是通过试验和错误扫描的条形码。 无论如何,我现在需要的帮助是库存即将到来,我们每个项目都有一个条形码,通常扫描到记事本,然后手动拉入Excel和“文本到列”使用。 我发现了Excel的分割function,并希望能够帮助我的扫描条形码。 数据格式为:11111 * A153333 * 11/30/11加一个回车符,其中*为分隔符。 我发现的所有例子似乎都没有做任何事情。 例如,这里是我在“”分裂中find的一个,但如果将其更改为*,则不会发生任何反应。 Sub splitText() 'splits Text active cell using * char as separator Dim splitVals As Variant Dim totalVals As Long splitVals = Split(ActiveCell.Value, "*") totalVals = UBound(splitVals) Range(Cells(ActiveCell.Row, ActiveCell.Column + 1), Cells(ActiveCell.Row, ActiveCell.Column + 1 + totalVals)).Value = splitVals End Sub 这在Sheet1代码部分应用,如果有帮助的话。 这真的不可能是这个复杂的,可以吗? 编辑:试图添加到VBA的Vlookup。 所以正如我在下面的评论中所说,我现在正在努力让vlookup集成到这个中,但是它只是返回N […]

如果不打开,windows schtasks打开excel,然后打开工作表,如果不打开

我在Windows 7 schtasks工具中创build了一个任务。 它在本月15日提醒我,打开一本我应该查看和更新​​的Excel工作簿。 便利。 问题是,在popup的时候,我已经有大约60%的机会打开Excel了,我想我甚至有一个小小的机会打开工作簿。 那么结果是不是很优雅。 该任务试图打开Excel的另一个副本,并抱怨只读访问,同样与工作簿本身。 在SCHTASKS或者BATCH文件(或者你推荐的任何其他方便的Windows工具)中有一种方法来首先检查Excel是否打开,然后如果是,就切换到它,而不是打开Excel的第二个副本? 我已经看到在.BAT文件中使用TASKLIST的一个注意事项来检查它是否打开: TASKLIST /FI "IMAGENAME eq EXCEL.EXE" 2>NUL | FIND /I /N "EXCEL.EXE">NUL IF "%ERRORLEVEL%" EQ "0" START excel "C:\Project4\MonthlyTracking.xlsx" 但是我不知道如何打开BATCH文件。 我在BATCH文件中没有看到告诉已经运行的excel进程打开一个文件的方法。 非常感谢!

Excel函数的命令行执行

Excel函数可以从命令行调用吗? 我不想与任何文件进行任何交互。 我只想用其他命令行工具的方式来使用这些函数。 它应该只是为了一些一次性的目的。 例如,如果有办法做这样的事情,我希望它: $ excel roman(15) XV $ excel randbetween(10,20) 14 当然,并不是所有可用的函数都可以像这样运行,但是越多越好。 是否有提供这种选项的本地应用程序(无论是在Linux或Windows上,但最好是跨平台的)? 或者有什么办法可以操纵excel本身来做到这一点(虽然,基于我所search的任何东西,这似乎是不可能的)?

我怎样才能创build一个locking的Python环境?

我负责开发一个在世界各地设有办事处的金融机构使用的大型Python / Windows / Excel应用程序。 最近一个国家的法规已经发生了变化,因此我们被告知我们需要创build一个“locking”的版本。 经过与外国对手的一些令人沮丧的对话后,似乎他们担心有人可能会误用他们的计算机上的Python解释器来生成可能被用来规避安全性的非标准应用程序。 我最初的build议只是拿走python.exe和pythonw.exe的执行权限:我们的应用程序作为一个只使用Python DLL的Excel插件。 这些exe文件从来没有实际使用。 我的对手仍然担心有人可能会对Python DLL进行调用 – 黑客可能利用“exec”函数,例如来自其他编程语言或能够调用Windows DLL中的函数的虚拟机,例如VBA。 有什么我们可以做,以防止我们要安装的DLL被滥用? 在这一点上,我用尽了想法。 我需要find一种方法来确保Python只能运行我们的授权程序。 当然,这个问题有一个荒谬的元素:由于计算机都具有Excel和Word,所以它们都具有VBA,这是一种着名的脚本语言,在某种程度上与Python相当。 当Excel的VBA是广泛开放的时候,显然没有必要去担心python,但是这是公司政治,我的团队正在build议使用Python,所以我们需要certificate我们的东西可以合理安全。

需要ActiveX控件将Excelembedded到对话框中

我正在构build一个“从Excel导入”function。 它必须位于从非MFC应用程序调用的DLL中。 必须提供电子表格的图像,用户可以拖动select框(select单元格),然后单击一个导入button,并发生正确的事情。 无法获得电子表格,有一个button相邻,并发生在一个DLL中。 我去了一个DLL对话框中的MFC对话框的路线,但被阻止在对话框上的窗口上调出一个OLE客户端的Excel。 只有支持我发现使用OLE显示Excel需要一个SDI。 我能够获得自动化function的工作,我可以读取单元格,并在我的对话框中画出它们的“假图像”…但是恐怕这将不符合我的要求。 所以我试图创build一个SDI。 我能够创build一个SDI,将Excel作为一个OLE客户端。 我能够处理“select改变”事件,并去我需要的单元格数据。 我被这件事挫败了2件物品: 无法使这个SDI在MFC DLL中工作。 在CWinApp构造函数中崩溃,断言AfxGetThread不是null。 将“theApp”移到了单个导出的DLL函数的本地范围内,但仍然无法使其工作,但是具有不同的症状:添加AFX_MANAGE_STATE(AfxGetStaticModuleState())时崩溃了。 导出DLL函数,如果我没有使用,OnInitInstance永远不会被input。 尝试添加一个调用应用程序的Run()函数,但没有帮助。 如果有人认为他们有一个想法是什么问题,我可以张贴这个代码。 Excel客户端项目处于活动状态时,无法显示工具栏。 我可以把我的“导入”(和其他选项)放在顶部的菜单栏上,但是这不够明显。 即使是一个浮动工具栏被closures。 这样做是有道理的,因为如果有一个工具栏不能在当前活动的项目上执行操作会令人困惑…但在我的情况下,这是一个问题。 所以现在我想我需要回到对话的方法,并embedded一个ActiveX控件,导致Excel电子表格文件导入。 必须允许我处理select更改事件,或者必须允许我查找select了哪些单元格(或者如果单击对话框上的“导入”button导致选定的单元格变为未选中状态,则最近select了这些单元格)。 它还必须提供合理的许可条款,因为这将用于广泛提供给公众的商业应用程序。 如果有人知道对我尝试过的两种方法中的一种,“快速修复”,那也是有用的。 希望可以有人帮帮我!