Excel:从列中选择更改范围并复制它

Excel:从列中选择更改范围并复制它,excel,Excel,我有一个很长的列(50000行),我想选择一个单元格范围(示例)(行数),以便应用某些计算。你不必担心计算公式。在这里,我只需要关于如何进行采样的帮助。范围(示例)应根据窗口大小进行更改。窗口大小是一个我可以选择的数字。例如,在下面的例子中,我选择了4的窗口大小。换句话说,我需要样本,这些样本是基于长列的选定行数。所有样本的大小(行数)将等于窗口大小。但是,每个样品从主柱移动一个。现在,样本应该在单独的列中,这就是为什么我需要将每个样本中的选择复制到其所需的列中。为了进行说明,假设以下示例: 假

我有一个很长的列(50000行),我想选择一个单元格范围(示例)(行数),以便应用某些计算。你不必担心计算公式。在这里,我只需要关于如何进行采样的帮助。范围(示例)应根据窗口大小进行更改。窗口大小是一个我可以选择的数字。例如,在下面的例子中,我选择了4的窗口大小。换句话说,我需要样本,这些样本是基于长列的选定行数。所有样本的大小(行数)将等于窗口大小。但是,每个样品从主柱移动一个。现在,样本应该在单独的列中,这就是为什么我需要将每个样本中的选择复制到其所需的列中。为了进行说明,假设以下示例: 假设窗口大小(行数)=4

预期产出应为:

main col sample1 sample2 sample3  sample4 sample5 sample6 
 1         1       2         3         4       5     6  
 2         2       3         4         5       6     7  
 3         3       4         5         6       7     8
 4         4       5         6         7       8     9
 5    
 6 
 7 
 8
 9
 10
然而,每个大小为4行的样本,每个新样本从主列中移位1。注意:我们得到了6个样本来覆盖主列中的所有行。基本上应该做什么:sample1将从主列的第1行到第4行。现在,sample2将是4个值,但是,从主列的第2行到第5行。sample3将是4个值,从第3行到第6行,依此类推,直到我们覆盖主列的整个范围。所以有两个主要的过程,选择和复制选择


我尝试使用偏移量和其他逻辑函数。。。但它不起作用。我不想使用宏或VBA。。。是否有任何内置函数来解决此问题

这基本上是范围转置的一种变体。使用以下公式:

=INDEX($A:$A,COLUMN()+ROW()-2,1)
然后复制到你想要的任何窗口大小。对于主列上的每一列,它将自动向下移动一行。结果如下所示(您负责将公式复制到正确的大小):

另外,您还可以通过以下方式自动生成列标题“示例N”:


你的问题不清楚。对于您的问题,可能有一种基于公式的方法-例如将row()和column()与mod()一起使用,但是如果没有公式需要计算的更多细节,很难判断。我同意@TimWilliams的观点,这个问题有些不清楚,此外,据我所知,excel公式完全不知道与UI状态有关的任何内容,例如大小、位置、可见性状态、屏幕分辨率等。这个问题听起来需要VBA,但我不会对一些非常,excel公式的创造性使用。@Eng.Mohd您是否尝试在excel中使用类似MatLab的矩阵公式?如果是这种情况,您需要在您试图实现的行动背后提供适当的逻辑:)你能举例说明输入是什么样的,期望的输出是什么样的吗?和其他人一样,我不完全理解你的意思。@Dean MacGregor、@bonCodigo、@TheGreatCO、@Tim Williams。。。。谢谢你的回复。。。我更新问题。
=INDEX($A:$A,COLUMN()+ROW()-2,1)
="Sample " & COLUMN()-1