Tag: 函数

excel vba函数返回数组并粘贴到工作表公式中

是否有可能为vba函数返回数组值并粘贴在Excel表中与Excel公式? 例如,我想在excel单元格中写一个公式A1 =GetData()并按回车。 它返回4个指标,填入A1:A4,B1:B4单元格。 我尝试了Variant和Collection作为返回types。 值在那里,但它只填充第一个单元格。 Function GetData(Input1 As Range) As Variant Dim value() As Variant value(1, 1) = "somevalue" value(1, 2) = "somevalue" ………… value(2, 2) = "somevalue" GetData = value End Function

Excel使用范围名称作为excel函数的参数

假设我有几个命名范围,P2017.01,P2017.02等等。 这些范围包含2017年1月01日,02月等的值。 我想一个接一个地总结月份值。 我想构build范围的名称,并使用这些构造的名称作为函数参数。 例如:前缀“P2017”在B3中,月份的索引在C3中。 我连接B3&'。'&C3并将值存储到D3。 在E3中,我希望= SUM(INDEX(P2017.01; 0; 2)),但不是写名称P2017.01我想从单元格D3的值中获取名称。 我应该写什么E3来做到这一点?

如何从Excel中的VBA函数返回一个长string?

我在Excel中定义了以下函数: Function LongString() Dim i As Integer Do LongString = LongString & "X" i = i + 1 Loop Until i > 40000 End Function 这会导致错误: #VALUE! 看来,最大string长度限制为32768? 如何得到这个工作? –谢谢大家的支持。 我的解决scheme是将我的function分成几个小于32768个字符的单元格。

excel vba:函数返回值奇怪

我有一个EXCEL VBA函数,它应该返回单元格值大于零但不工作的第一个单元格的地址。 有没有人有一个想法,为什么? 码: Function FindNextFilledCell(RowArray() As Integer, ColArray() As Integer) For i = UBound(ColArray) To 0 For j = UBound(RowArray) To 0 CellValue = cells(RowArray(j), ColArray(i)).Value If CellValue > 0 Then FindNextFilledCell = cells(RowArray(j), ColArray(i)).Address(False, False) Exit Function End If Next j Next i End Function

EXCEL:只保留另一列中具有最高值的唯一值

在我的两列数据中,我只想保留ColumnTwo中具有最高值的ColumnOne的唯一值。 例如 ColumnOne ColumnTwo 2 6 3 2 7 8 2 7 3 4 7 3 所以在这个例子中我的输出是: 2 7 7 8 3 4 因为这是ColumnOne中具有ColumnTwo中最高值的唯一值。 我尝试使用公式 "=IF(COUNTIF($A$2:A2,A2)>1,[ IF(B2>____ )1,0 ], 0)" 但我坚持要在这部分放什么 "IF(B2>____)." 这就是我想在函数中说的: 如果第一列中的值重复多次 如果相应的B列有较大的值,则为PRINT 1 ELSE PRINT 2 * 其他 *打印0 任何帮助将非常感激,谢谢!

Excel VBA – 值不从函数返回

我试图让Excel函数返回更多的参数,而不是最初传递给它。 我用Excel VBA已经有一段时间了,但我想知道是否有可能做到这一点? 这是我一直在开发的代码。 函数(“SelectColumn”)需要返回6个值,我已经把它们作为参数在下面的代码中。 非常感谢您的帮助。 Sub match_names3() Dim i As Integer Dim strRow, strCol As Integer Dim UpBound, LowBound As Range Dim strUpBoundRow, strUpBoundColumn, strLowBoundRow, strLowBoundColumn As Integer Dim CompareRange_alum_names As Range Dim CompareRange_bio_names As Range Dim alum As Variant, bio As Variant Dim AlumCount, BioCount As Long strRow = 2 strCol = 8 […]

Application.MacroOptions和错误1004

我想注册一个CalculateHours(work_hour, rest_hour)的函数种类到Excel VBA,在一个Addin像Works.xla 我尝试使用Application.MacroOptions来注册该函数。 以下代码是在一个Class文件中,该函数在另一个模块文件中。 当我们打开Excel和Addin时,它们会加载。 码: Private Function AddFunctions() With MyFunction Application.MacroOptions .Name, _ .Description, , , , , .Category, , , .HelpFilePath End With End Function 期望: 我想获得参数帮助,Excel函数向导中的函数描述作为其他内置函数。 用帮助button链接到我的帮助文件。 结果: Error number: 1004 Application-defined or object-defined error 要么 Method "MacroOptions" of object "_Application" failed 有什么(或一切)错误吗? 我有10种function,每次加载插件时都需要将它们自动添加到Excel函数向导中。

如何将MS Excel 2010中的名称与文件名进行比较?

我的目标是:将目录中的文件名与电子表格中的名称进行比较。 如果有匹配,那么我希望将该名称的相应帐号追加到文件名。 我已经使用dir命令检索目录中的所有文件名,然后将该列表粘贴到Excel电子表格的列中。 我现在有4列:帐号,姓氏,名字和文件名。 这里的主要问题是文件名不一致。 他们的forms是“姓,名,姓”,但是他们的forms是“史密斯,约翰010112”,“史密斯,010112”,“史密斯010112”。 这意味着,当涉及到名字,我只会比较string的第一个字母。 所以基本上,对于每个文件名,我需要检查姓氏与姓氏列。 如果find了一个匹配项,那么我需要检查文件名的第一个字母与匹配的姓氏在同一行中名字的第一个字母。 如果这也是一个匹配,那么我需要获取该行的帐号并将其追加到文件名。 我怎么能这样做? 我对Excel函数非常陌生,但是在某些大学课程中,我对Java和C编程有一点经验。

立方根使用vba

我正在寻找一个解决scheme,以在Excel中find立方根。 我在这个网站find了下面的代码。 http://www.mrexcel.com/forum/excel-questions/88804-solving-equations-excel.html 不幸的是,它不适合我 – 我得到#VALUE! 当我运行它,因为我只学习VBA,我没有运气debugging它。 Sub QUBIC(P As Double, Q As Double, R As Double, ROOT() As Double) ' QUBIC – Solves a cubic equation of the form: ' y^3 + Py^2 + Qy + R = 0 for real roots. ' Inputs: ' P,Q,R Coefficients of polynomial. ' Outputs: ' ROOT 3-vector […]

Excel函数帮助 – 将工作表中的2个单元格与另一个工作表中的2个单元格进行比较,如果匹配,则返回不同列中的值

我想知道是否有人能够提供一些build议,请最好的方法来做到这一点: 数据在工作表#1 Col A | Col B | Col C Part-1 | 8 | 2 Part-2 | 7 | 7 Part-7 | 9 | 4 Part-8 | 2 | 6 数据在工作表#2 Col A | Col B | Col C Part-1 | 8 | *Return value* (If Part-1 is found and 8 matches, return 2) Part-2 […]