Tag: excel 2003

在Excel 2003中使用无效名称删除隐藏的名称定义

我正在使用这个macros: http://support.microsoft.com/kb/119826 尝试清理我的Excel文件中的隐藏名称。 它适用于大多数隐藏的名字,但不适用于一些_123Graph名字。 我不知道这些名字来自哪里,但是当我尝试删除它们时,我得到了一个1004自动化错误。 知识库提到带空格的名字可能会导致错误。 有没有办法删除这些?

在excel用户定义的函数中使用工作表

我试图写的VBA是相当简单的,但我从来没有写VBA和来自Visual Studio&C#世界,这真的是地狱! 所以我真的很感激任何帮助/指针/提示在这里 所以我有两个重要的工作表。 范围工作表每个date有2个值。 它需要一个结果,计算表取两个值,并得到我的结果。 我想将每个date的Current和OneYear值放入Calc表格中,并将结果存入结果列。 所以我试着定义一个UDF,但后来我学到了不能修改UDF中的工作表内容。 我试图录制一个macros,然后希望从那里走,但我有这样的事情: Range("A2").Select Sheets("24Feb05-24FEB10").Select Range("K9").Select ActiveCell.FormulaR1C1 = "=Calc!R[-8]C[-10]" Range("K9").Select 我假设R1C1是行和列,但为什么在地球上它说-8和-10! 有人能让我走向正确的方向吗? 注意:约有2000多个date。 希望我的问题很清楚! 更新我会清除更多的东西: 我大大简化了Calc表格,实际上,它需要5个值(有6列的列)然后,这张表格会调用其他4张表格,然后进行一些非技术专家的财务计算。 我试图让财务人员在代数中向我expression他在做什么,所以我可以写一个C#函数。 我也试着写一个UDF,但是就像我说的那样需要放入值并得到结果,这意味着UDF将修改表单 。 Function Func1(txt As Variant) As String //Returns the nth element from a delimited text string Dim txt As String txt = text Sheet4.Cells(1, 1) = txt Func1 = Sheet4.Cells(2, 1)//get […]

如何使用VBA从Excel图表中删除系列

我正尝试使用VBA从Excel 2003的图表中删除空白系列。 我已经看到其他人在过去曾经遇到这个问题,并且尝试了在他们的post中提到的所有方法,但一直没有find一致的工作。 图表中有14个系列,其中3个或9个之间的任何地方都可以是空的。 空的一直在4-12号系列之间。 我已经尝试了一些代码的变体,但这主要是: Sheets("chart-1").Select ActiveChart.PlotArea.Select For i = 12 To 4 Step -1 Dim theSeries As Series MsgBox (ActiveChart.SeriesCollection(i).Name) Set theSeries = ActiveChart.SeriesCollection(i) MsgBox (theSeries.Name) theSeries.Delete Next 我可以为图表成功运行一次,但所有后续循环都会失败,并且Unable to get the Name property of the Series class错误Unable to get the Name property of the Series class 。 它在调用.Name时失败。 我可以通过直接插入整数来得到它的工作,但它只会运行一次除了1以外的所有整数。对于Series(1)它会运行多次。 例如,如果我只是简单地调用:ActiveChart.SeriesCollection(1)。删除,然后系列被删除,但如果我然后运行它与另一个整数(4,9,12)它将不会运行。 它会再次工作1,但只有1它也将工作一次与其他整数(如4),但所有后续调用将失败,即使我改变整数为1或保持为4,或改变其他数。 行为真的很奇怪。 […]

VBA在Collection中获取按键值

可能重复: VBA集合:密钥列表 也许这是一个非常简单的问题,但我是VBA新手。 我有一些数据,我想用作收集(键,值)。 我怎样才能获得价值的关键?

VBA运行时错误:清除Excel工作表的内容

我已经在Excel 2003中编写了以下VBA代码来清除Excel表格的内容; 但是它表明 运行时错误438:对象不支持此属性或方法 这是我的代码, Application.DisplayAlerts = False Application.ScreenUpdating = False Set wbk = Workbooks.Open("C:\a.xls") wbk.Sheet1.Cells.ClearContents 'Error at this line wbk.Save wbk.Close Application.DisplayAlerts = True Application.ScreenUpdating = True 任何人都可以让我知道,如果不可见的Excel不支持wbk.Sheet1.Cells.ClearContents 。 如何在不可见的情况下清除Excel表格的内容?

MS Excel LINEST,TREND,LOGEST和GROWTH函数中缺less值

我在Excel 2003中使用GROWTH(或LINEST或TREND或LOGEST,都会造成同样的问题)函数。但是,如果缺less某些数据,函数会拒绝提供结果: 你可以在这里下载文件 。 有没有解决办法? 寻找简单而优雅的解决scheme。 我不希望摆脱缺失值明显的解决方法 – 这将意味着删除列,这也将损坏graphics,这将使我的其他表中的问题,我有更多的行和缺less的数据不同列。 其他显而易见的解决方法是使用一个数据进行回归,另一个用于graphics,但是又一次,这是烦人的,只会使工作表混乱! 有没有办法告诉excell – 这个值是NA? 另一个想法是跳过expression式中缺less的值。 是否有可能解决一组不连续的单元格? 像在我的例子中一样,不要使用=GROWTH($B2:$AH2; $B1:$AH1; B1) ,而应该使用类似于: =GROWTH({$B2:$I2,$K2:$AH2}; {$B1:$I1,$K1:$AH1}; B1) 我当然想避免写我自己的表情。 我需要向同事解释如何做到这一点,这将更加复杂。 我想要一个简单而优雅的解决scheme。

没有VBA的复杂枢轴式总结

给定一组这样的数据: User Item1 Desc. Item1 Sel. Item2 Desc. Item2 Sel. Item3 Desc. Item3 Sel. UserA Item 1 Yes Item 2 Yes Item 3 Yes UserB Item 1 Yes Item 2 No Item 3 No UserB Item 1 Yes Item 2 Yes Item 3 No UserC Item 1 Yes Item 2 No Item 3 Yes UserA […]

根据屏幕分辨率调整工作表缩放级别

我有一个Excel 2003macros来调整我的屏幕缩放基于屏幕分辨率。 Sub Macro1() Dim maxWidth As Long, myWidth As Long Dim myZoom As Single maxWidth = Application.UsableWidth * 0.96 'I use r because upto ri have macro buttons myWidth = ThisWorkbook.ActiveSheet.Range("r1").Left myZoom = maxWidth / myWidth ActiveWindow.Zoom = myZoom * 100 End Sub 当我在Excel 2003中尝试时,button大小及其标题不能正确缩放。 和Application.UsableWidth始终返回1026作为宽度为屏幕分辨率1024 * 768或1366 * 768。 有任何想法吗? 如果打开任何系统屏幕分辨率,我希望Excel表格适合宽度

检查人员的生日是否在Microsoft Excel 2003中的特定date之后

我怎样才能检查一个人的生日是在MS Excel 2003中的任何一个月的15日之后? 如果生日在15日以后,则应显示下个月的第一个date。 如果在15日之前,那么应该显示该月的第一个date。

Excel VBA中通过数组和全局数组有什么优点和缺点?

好吧,第二次尝试写一个堆栈溢出问题,所以请原谅,如果这似乎很熟悉。 我正在重写一个超过2年半的时间,frankenstein风格(增加到零碎)的Excelmacros。 我需要做的一件事就是将数据加载到数组中,一次又一次地提高数据的准确性和速度。 对于我的技能水平,我将坚持Array方法。 我的两种做法是: 使用全局变暗的dynamic数组 在我的Main过程中调暗dynamic数组,并将它们传递给被调用的过程 那么,Stack Overflow对这两种方法的优点和缺点是什么呢? 谢谢,克雷格…