Tag: excel 2003

用某些条件从命名范围中删除行

在我以前的文章中: 从所有书籍的数据到一些表格我已经问过如何从EXCEL中的所有已打开的书籍中获取一些数据。 但是有一些问题。 我不知道如何检查名称范围中的列名“Id”的值是否具有值“0”。 如果有的话,不应该添加到决赛桌上。 我怎样才能做到这一点? 所以我得到命名后的范围值: Set Rng = iList.[Table]我需要清理它 i = 1 For Each row In Rng.Rows Set cell = row.Cells(1, 2) If cell = "0" Then Rng.Rows(i).Delete End If i = i + 1 Next

Excel 2003 vba图表失败

所以即时获取图表失败的错误,这似乎是因为我的名字WBname,但我不能弄明白。 有一个类似的问题,但由于这是一个有点不同,我想我会提出一个新的问题。 这里是有问题的代码: Dim WBname As String WBname = Replace(ActiveWorkbook.Name, ".xls", "") Worksheets(WBname).Activate Charts.Add ActiveChart.ChartType = xlXYScatterSmoothNoMarkers ActiveChart.SeriesCollection(1).XValues = Worksheets(WBname).Range("A4:A5000") ActiveChart.SeriesCollection(1).Values = Worksheets(WBname).Range("B4:B5000") ActiveChart.SeriesCollection(1).Name = Worksheets(WBname).Range("B3") ActiveChart.SeriesCollection.NewSeries ActiveChart.SeriesCollection(2).XValues = Worksheets(WBname).Range("A4:A5000") ActiveChart.SeriesCollection(2).Values = Worksheets(WBname).Range("C4:C5000") ActiveChart.SeriesCollection(2).Name = Worksheets(WBname).Range("C3") ActiveChart.SeriesCollection.NewSeries ActiveChart.SeriesCollection(3).XValues = Worksheets(WBname).Range("A4:A5000") ActiveChart.SeriesCollection(3).Values = Worksheets(WBname).Range("D4:D5000") ActiveChart.SeriesCollection(3).Name = Worksheets(WBname).Range("D3") ActiveChart.SeriesCollection.NewSeries ActiveChart.SeriesCollection(4).XValues = Worksheets(WBname).Range("A4:A5000") ActiveChart.SeriesCollection(4).Values = Worksheets(WBname).Range("I4:I5000") ActiveChart.SeriesCollection(4).Name = […]

Excel中的最大下拉列表/公式长度

我有以下的VBA代码: myList = "test" Range("A1:Z1").Validation.Delete Range("A1:Z1").Validation.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Formula1:=myList 如果我的列表超过了256个字符,则会被截断。 如果它超过1024,我得到一个执行错误(我认为这是一个公式的最大长度)。 我怎样才能克服这些限制? 我正在使用Excel 2003。

如何隐藏数据透视表项,但将其包含在Excel 2003中的总计中

在Excel 2003中,我正在尝试创build一个Workbook_SheetPivotTableUpdate Sub,它在数据透视表上强制执行一个限制,使特定行字段的特定数据透视项不可见,但仍必须对小计和总计有贡献。 我知道有一个设置“小计隐藏页面项目”,如果该字段是一个页面字段,就会发生这种情况。 我也知道如何强制透视项目可见或不可见: Private Sub Workbook_SheetPivotTableUpdate(ByVal Sh As Object, ByVal Target As PivotTable) Dim pvtField As PivotField Dim pvtItem As PivotItem Set pvtField = Target.PivotFields("Specific Field") If pvtField.Orientation = xlRowField Then Set pvtItem = pvtField.PivotItems("Specific Item") pvtItem.Visible = False End If End Sub 但我不知道是否有可能把它放在用户看不到的状态,但是它继续对数据透视表中的小计和总计有贡献。 在遍历数据透视表的行并将行高设置为0之后,是否存在透视项目的状态或操作Excel计算总计以完成此操作的方式?

SSRS 2005 – 导出到Microsoft Excel 2003的边框问题

我正在制作一个SSRS report ,以PDF和Excel 2003格式导出。 在报告中,我有一个rectangle有几个tables和text boxes的border style都是矩形,标记为None 。 当我预览报告&导出为PDF时,边框只出现在矩形的周围,其他所有元素都是无边界的,但是当我将其导出为Excel格式时,边框会在不同的文本框之间出现。 我对为什么会发生这一切毫无头绪。 请帮助和build议。

对象_global的方法“范围”在什么都不做时失败

我有一个macros基本上处理一些列和基于一些访问2003年数据库的交叉检查吐出的结果。 它工作绝对好 – 没有任何结果。 不过,我最近不得不对它进行修改。 代码的一行字面意义上将“8”改为“9”。 但是我下次运行它时,抛出了1004: Method 'Range' of object '_Global' failed错误的1004: Method 'Range' of object '_Global' failed 。 Excel 2003是一件很有趣的事情 – 我曾经为此纠缠过几个小时,试图find可能导致错误的有害代码行,但唉,没有用。 我做了一些我不希望触发的事情: 从原始的macros开始(100%确认工作),如果我只是打开代码,然后保存,所以'最后更新'元数据将更新以反映保存,虽然没有任何改变,它会再次抛出错误在开幕式上。 就好像它太脆弱了,保存macros观将会破坏它。 有任何想法吗? 更新:这是我最初造成这个问题的变化 iOutputCols = 9 'this was changed to 9 from 8 ReDim Preserve sOutputCols(iOutputCols) sOutputCols(0) = "Policy No" sOutputCols(1) = "Client" sOutputCols(2) = "Trans" sOutputCols(3) = "Effective […]

如何从无法注册到函数向导的xll加载项调用函数?

我有一个xll(一个相当复杂的c ++项目)导出一个函数,由于历史原因,需要大量的参数,正好20 。 这是一个神奇的数字:显然,在Excel 2003中最多有30个参数(“在Microsoft Office Excel 2003中,任何函数可以使用的参数的最大数量是30,尽pipe大多数less于这个”)。 超过20个function不能在function向导中注册 。 现在,正如你所猜测的,我已经被要求增加3个参数。 好的,所以参数计数可以达到23(至less,这个函数不是为了“人类消耗”,而是总是由VBA包装来调用)。 通过使用VC ++debugging器附加到Excel进程,我在注册时得到错误代码4,代表xlretInvCount 。 我已经确保逗号分隔参数名称的string是短于255个字符 。 顺便说一句,我使用xlw 4(旧版本,我知道)。 所以,如果限制是30我希望能够通过调用我的function Application.Run("function name", ….. very long list of arguments) 但不使用向导。 麻烦的是,VBA告诉我,该function没有注册。 那么,我该如何正确使用一个花费超过20个参数但less于30个的函数呢? 注意:请不要陈述明显。 我知道问题的真正关键在哪里。 重构目前是不可能的。

VBA Excel 2003按自定义顺序打印页面

我有一个Excel(2003)工作簿。 我需要打印包含在工作簿中的某些信息的小册子。 是否可以在一个打印作业中从一个工作表打印一个页面,然后从另一个工作表打印另一个页面,因为打印设置与小册子一样? 我一直在search互联网一段时间,没有任何运气。 在我的search中遇到的一个可能性是将每个工作表保存为一个PDF文件,所以PDF文件将包含10页。 唯一的问题是添加第三方DLL,因为我的公司对此有严格的规定。 如果有内置的方法,请让我知道,因为我找不到它。 谢谢,M

Excel 2003:将列A中的值与列B中的值匹配,然后从列B中提取数据

我正在尝试在Excel 2003中编写一个公式。 情况: 列A对应于列B.列C对应于列D.列A中有多个行与列C中的单个行匹配 Column A Column B Column C Column D 1 1247 ≥ 98.5% 1247 ≥ 98.5% 2 1250 ≥ 99.9% 1250 ≥ 99.9% 3 1258 ≥ 99.9% 1258 ≥ 99.9% 4 1341 ≥ 99% 1341 ≥ 98% 5 1341 ≥ 99% 1349 ≥ 99% 6 1349 ≥ 60% 1376 ≥ 99% 7 […]

VBA查找具有两个variables的行,然后时间戳一列

任何人都可以给我build议如何在电子表格中查找匹配两个条件的行,然后更改特定单元格中的数据。 数据会是这样的.. Reference Version date1 date2 date3 ABC1 1 11/12/2013 ABC1 2 31/12/2013 ABC2 1 12/12/2013 ABC3 1 12/12/2013 ABC1 3 01/01/2014 在VBA中,我希望能够find与引用和版本号匹配的行,然后find该唯一行的datestamp列4。 任何帮助将非常感激。 非常感谢