Tag: excel 2003

将整个工作表从Excel的一个实例复制到另一个实例

根据这篇文章 ,您不能将工作表从Excel的一个实例移动或复制到另一个实例。 不幸的是,这是我必须使程序正常工作的唯一方法。 我有两个Excel实例:一个由我们古老的ERP系统运行,另一个通过OLE调用。 在第二个运行的macros应将第一个工作表从已打开的工作簿( ThisWorkbook )复制到第一个实例( Wb )中打开的工作簿中。 我正在使用ForEachLoop的解决scheme来获得Wb : Public Function GetExcelObjectFromHwnd(ByVal hWnd As Long) As Boolean … If AccessibleObjectFromWindow(hWnd, OBJID_NATIVEOM, iid, obj) = 0 Then 'S_OK Dim objApp As Excel.Application Set objApp = obj.Application Dim Wb As Workbook For Each Wb In objApp.Workbooks ProcessWorkbook Wb Next Wb fOk = True End If […]

在这些嵌套的INDEX,MATCH和SMALL函数公式中,如何以及为什么使用行(A1)

在下面的嵌套函数公式中,我不明白为什么使用ROW(A1)或者为什么它可以工作。 请参阅下面的图片和2个嵌套函数公式。 这些嵌套函数使用左侧的数据在图片的右侧生成类别和时间消耗数据。 “H”列中的公式返回类别标题/描述,“I”列中的公式返回花费的总时间。 这些按从最小到最高的“花费时间”值sorting。 从嵌套的最内层函数,小函数返回ROW(A1)中花费的单元总时间数组中最小的数。 我相信匹配函数然后返回find该值的列字母。 索引函数然后显示匹配函数返回的列值中的值和单元格数组指定的行中的值。 当您将此嵌套函数复制到每个连续行时,它会将“A1”增加到“A2”,“A3”等等。 我以为ROW函数只是返回了被引用的单元格的行号,如果这个引用被省略了,它就默认为包含ROW函数的单元格地址。 那么为什么ROW(A1)在这里工作,变成每个成功的行和公式中的SMALL函数find的下一个第n个最小的数字? H3 = INDEX($ B $ 3:$ F $ 3,MATCH(小($ B $ 2:$ F $ 2,ROW(A1)),$ B $ 2:$ F $ 2,0)) I3 = INDEX($ B $ 2:$ F $ 2,MATCH(小($ B $ 2:$ F $ 2,ROW(A1)),$ B $ 2:$ F $ 2,0)) 谢谢! VH

如何使= GETPIVOTDATA更加dynamic?

我有一个数据透视表,我试图引用一张表,然后交叉引用它与另一个来比较这两个值。 我现在所拥有的类似于此处列出的公式 – http://www.techonthenet.com/excel/pivottbls/getpivotdata2.php 但是,而不是写作=GetPivotData (team_count,"'Team 1' 'Count of B'") ,然后更改为我的工作表中的其余单元格。 我希望能够引用包含我想查找的数据的单元格。 所以举个例子,我会在A2单元格中有Team 1 ,而在A3单元格中Count of B 。 我试图重写公式=GetPivotData (team_count, A2, A3)但只是给了我一个错误:/

将Excel 2007 VBA转换为Excel 2003

我正在尝试修改我为Excel 2007编写的xla外接程序,以便在Excel 2003中工作。我对大部分问题进行了sorting,但是我无法findsorting工作表中的字段的方法。 我有一些数据需要按照创builddate的顺序进行sorting(其值在H列中)。 这是我使用的Excel 2007代码: 'sort issues into descending order Sheets("In Progress").Sort.SortFields.Clear Sheets("In Progress").Sort.SortFields.Add _ Key:=Range("H:H"), _ SortOn:=xlSortOnValues, _ Order:=xlDescending, _ DataOption:=xlSortNormal With Sheets("In Progress").Sort .SetRange Range("A2:M" & rowCount – 1) .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With 任何人都可以帮助我得到这个与Excel 2003的工作?

Excel公式结果不是单元格值

在Excel中,我尝试获得2条标准匹配的行数。 IF(Data!J $ 5:Data!J $ 1000 =“RC Corp”,IF(Data!AD $ 5:Data!AD $ 1000 =“Expected Allowances / Provisions”,1))) 数据在我的工作簿中是不同的工作表。 在单元格中它显示了结果1.但是,当我观察公式时,它告诉我“公式结果= 2”正确的结果是2.但它总是显示1.我也尝试用f9手动更新单元格,但没有任何变化。 谢谢你的帮助。

在Excel工作表中使用一个命名范围来传播一个列表框

所以我在excel工作表中有一些namedRanges。 我想用这些在同一个工作簿中的用户窗体上填写combobox。 我努力了: cboMember.DataSource = Globals.Sheet1.MemberRange.Value 没有错误,但组合是空白的。 有人有什么想法吗? 我正在尝试在Excel 2003工作簿中使用VS 2008的VSTO。

在Excel 2003中将unicode分数字符(低俗分数)转换为小数

我试图将以下文本转换为Excel 2003中的十进制数字: “93⅛” 输出应该是:93.125 我已经通过使用VBA中的replacefunction来获得这个function:¼,½,¾。例如,这可以工作: cur_cell = Replace(cur_cell, "½", " 1/2") 但是,VBA编辑器不支持⅛和系列字符。 他们显示为?? 相反,我试图直接replaceunicode的值: cur_cell = Replace(cur_cell, " & ChrW$(&H215B) & ", " 1/8") 但是这不起作用。 有没有一种很好的方法将这些string转换为我可以使用的数字?

sumproduct excel多个表

我有两个表,我想通过引用另一个表来计算一个项目的出现次数, 例如,我想知道鲍勃拥有多less蛇,明显的答案是两个,但是我怎么用一个公式来做呢? 我已经用sumproduct来计算单个蛇的出现次数,但是我想通过引用第二个表来将它们全部放在一个公式中。 这可能吗? 注意 :我有excel 2003,因此是sumproduct AB 1 Bob Boa 2 Ann Cow 3 Bob Sheep 4 Bob Python AB 1 Farm Snake 2 Cow Boa 3 Sheep Python

VBA如何复制一个单元格的内容没有。select

我正在写一个方法,可以将Target贴到另一个单元格。 这个单元格是带有一些奇特格式的运输标签。 有什么办法可以做到吗? 本来我有这个: Worksheets("Label").Range("A1").Value = Worksheets("Get Address").Range("A28").Value 它为纯文本工作。 然而我失去了我创造的造型,他们是不同的,因为在第一行之后,风格是不同的: 我也尝试使用macroslogging器,我得到了一个解决scheme使用。select,我读这个问题,不要使用它,只要有可能。 我能做什么? ' Created by the Macro Recorder Range("A28:A33").Select Range("A33").Activate Selection.Copy Sheets("Label").Select Range("A1").Select ActiveSheet.Paste

空白字段复制为#N / A

我正在使用Excel 2003 VBA脚本,将内容从外部Excel文件中的工作表复制到我们自己的工作表中: ThisWorkbook.Sheets(strTarget).UsedRange.Value = Workbooks(strFile).Sheets(strSource).UsedRange.Value 在大量空白单元格中,此函数发布#N / A而不是空白值,这将导致VBA代码中的错误进一步下降。 这只发生在一些工作表上,而其他人复制完好,有时通过在额外的行中添加这些值,并在其他列中添加其他时间。 我试图用IsNA清除错误无效: If (IsNA(Workbooks(strFile).Sheets(strSource).UsedRange.Value)) Then ThisWorkbook.Sheets(strTarget).UsedRange.Value = "" Else: ThisWorkbook.Sheets(strTarget).UsedRange.Value = Workbooks(strFile).Sheets(strSource).UsedRange.Value 有没有一个简单的方法来删除这些#N / A值在拷贝过程中,甚至在事后清除它们? 任何其他如何处理这个问题的build议也将会非常令人满意,因为我不是一个VBA的开发者,而是一个幸运的灵魂,当唯一有Excel和VBA经验的人离开我们的团队的时候,这个幸运的灵魂就会select这个。 提前致谢!