0

这似乎不是 Excel 的常见行为。我以前从未见过这种情况。我会尽力解释它。

我有两个电子表格,SS-A 和 SS-B。SS-A 有一个工作表 WS-source,SS-B 有一个工作表 WS-dest,其中 WS-dest 通过几个公式从 WS-source 中提取数据。

SS-B 有另一个工作表 WS-final,它再次使用公式从 WS-dest 中提取数据。由于某种原因,WS-final 中公式的结果失败,因为 WS-final 中的公式“看到”WS-dest 中的公式而不是公式的值。

这些公式在 WS-dest 中有效。当我查看 WS-dest 中的电子表格时,我没有看到单元格中的公式,我看到了公式结果的值。但是,WS-final 的公式在尝试使用这些值时会失败。

我是如何得出这个结论的:WS-dest 不习惯使用公式。我将值手动放置在字段中。WS-final 工作得很好。几天前,我开始使用公式从 WS-source 中提取数据,而不是手动将其插入 WS-dest。在此更改之前,WS-final 运行良好。此外,出于测试目的,我将 WS-dest 中的几个测试字段从公式替换为手动卡住的值,WS-final 中的公式再次起作用。我从 WS-final 中获取了公式的副本,并将它们放在 WS-dest 的未使用单元格中,调整单元格引用以使公式可以工作。结果,我观察到了同样的行为。

宏:

Public Function sbTextToColumn(srcRng As Range) As Variant
    Dim vData As Variant

    vData = Split(srcTang.Value2, "/")
    ReDim Preserve vData(0 To Application.Caller.Columns.Count - 1)
    sbTextToColumn = vData
End Function

这是另一个 SO 成员帮助我完成的功能,效果很好!我个人是一个 Linux/Unix 专家,擅长 Perl 和 PHP 等语言。感谢您的帮助。

4

1 回答 1

1

Problem could be your custom function using the Value2 instead of the Value property. See http://support.microsoft.com/kb/182812/en-us for differences.

于 2012-01-04T20:23:24.707 回答