如何 select 单元格中的数据并复制到范围,直到找到其他数据 open office calc

how to select data from cell and copy to range until other data found open office calc

有问题

我想知道是否有一种方法,比如如果 B1 单元格上有日期(或文本,例如),然后将 B1 数据复制到范围 A2-A19,直到下一个包含数据(B20)的单元格,依此类推.因为很多数据是手工无法完成的。

如果B列中的"date"值实际上是文本,则在A1中输入:

=IF(ISERROR(AND(FIND("/";B1)=3;FIND("/";B1;4)=6));OFFSET(A;ROW()-2;0);B1)

这将测试单元格 B1 在字符串的第三个和第六个位置有一个“/”字符。

如果 B 列中的 "date" 值实际上作为日期输入电子表格,则在 A1 中输入:

=IF(YEAR(B1)<1950;OFFSET(A;ROW()-2;0);B1)

此测试 B1 的整数值(在日期的情况下,此值为自 1899 年 12 月 31 日以来的天数)早于 1950 年的年份。您可能需要将 1950 调整为不同的年份取决于您的数据的详细信息。

在任何一种情况下,如果测试失败,则显示 A 列上一行的值(将单元格 A1 偏移当前行减去二:例如,在第 3 行,A1 将偏移 3-2 = 1 并且 A1 偏移 1 是 A2).

如果测试成功,则显示 B 列中相应行的值。

A 中的 $ 将在复制粘贴公式时保持该值不变,因此偏移计算将正常工作。当您向下复制粘贴该行时,所有其他值都会适当调整。