3

我在每列中有很多测量值。我使用这些值下的公式来计算它们。我总是编辑第一列并拖动完成(所选单元格东南部的小方块)来更改其他列。

处理 5 个值时很好,但公式中有 20 个值,事情就变得复杂了。我想使用单元格名称,正如我在 Excel 中的变量中找到的那样,但是当我使用拖动完成时,此单元格不适用于下一列,就像 $D$1 代替 D1 一样。

解决方案的想法:

  1. 也许我可以将一行单元格声明为一个数组并用 cellname(row) 对其进行索引,但这怎么可能呢?
  2. 使用小型 vba 脚本可能更容易,但我想避免这种情况。

提前致谢。

编辑1:

我担心我的问题不是那么清楚。我将尝试使用以下文件清除它。因此删除了 Excel 标记,我上传了一个 ods 文件:

我的文件看起来像上传的简短示例example.ods

我在第二列中创建了单元格名称,例如“ size”。然后我=size+step+thickness*weightC7. 当我将其拖动完成到单元格时D7E7example.png所示。我当然得到与 中相同的结果C7,因为单元名称被用作绝对名称$B$2,例如。

我怎样才能将人类可读的公式应用于D7E7不进行编辑D7E7手动?当我用于C7“ =C2+C3+C4*C5”时,我当然可以使用拖动完成。

我希望这现在更清楚了。我想这是一些基本功能,但我只是不知道如何描述它。也许你有类似的想法让它比“ =C2+C3+C4*C5”更具可读性。

4

2 回答 2

3

This works in OpenOffice.org Calc as well as in LibreOffice Calc, but it's crucial to define the cell names for every column that will be evaluated by the formula. Here's a step-for-step solution, based on the example document:

  1. Start with a spreadsheet containing just the values together with row and column heads: Ranges 1

  2. Create the cell range names:

    a. Select the data range including the column holding the row names (OOo will use those Strings as names in the next steps):

    Named Ranges 2

    b. Select "Insert -> Names... -> Create":

    Create names...

    c. Select "Left Column" to name the rows based on the content of the first column:

    ... with names based on left column

    Result: four names, one for each row, named as desired:

    resulting names

  3. Create the formula for the first data row (here incomplete, demonstrating OOo's tooltips): formula

  4. Drag-complete for all other data rows, giving the final result (with Tools -> Detective -> Trace precedents activated - the detective points to the array's first column, but the formula will use the values of the current column):

    final result

于 2011-08-25T14:21:34.960 回答
0

您可以在名称中使用相对引用,为此使用 R1C1 模式更容易:

使用 =R2C 的 RefersTo 定义名称大小 然后在公式中使用名称大小的任何地方,它将引用当前列和第 2 行

于 2011-08-26T09:52:42.113 回答