如何在不同的工作表上select下面的单元格以填充工作表上一个单元格旁边的单元格

我负责创build仓库地图。

在数据中我必须有模型,描述和位置。

我遇到的麻烦是,我使用第二张纸上的数据填充“地图”

ie ='1'!F2当我尝试拖动并使用它来填充整行时,它变成='1'!g2 。 我想要去='1'!F3

我看到它在做什么的逻辑…但我不希望它使用该逻辑..我希望它使用它下面的下一个单元格填充该单元格。

最简单的事情可能是复制,然后select性粘贴>将数据转换为“1”到新的工作表。 然后,您可以拖动引用新工作表的公式,并按照预期行事。

编辑:根据你原来的问题,这将填写列的结果向右,当你拖下来,反之亦然。 这从字面上做你的原始问题:

 =INDEX(Sheet1!$F$2:$Z$8000,COLUMN(),ROW()) 

从A1开始,向两个方向拖动。 要向左边添加一个或多个标题行,只需将行或列插入到顶部或左侧(以保持公式发声)。

编辑:这是转置function,per @ brettdj的build议。 我发现很难一起工作,但它确实使事情变得更加清晰:

在目标工作表的单元格F2:8000中input:

 =TRANSPOSE(Sheet1!$F2:$Z8000) 

然后,选中所有这些单元格,在其中一个单元格中进入编辑模式,然后Ctrl Shft Enter进行数组input。 如果您必须调整源范围的大小,我相信您必须使用正确的范围重复这些步骤。 我自己是一个索引迷,所以会坚持下去。 偏移是不稳定的,所以我会避免它。 如果我有任何最后的编辑错误,@ brettdj将帮助我们。

既然你想要的是非本地行为,那么写一个小的VBAmacros来做拷贝可能是值得的,并且把它分配给一个键盘快捷键。

下面是一个简单的例子,将一个单元格复制到右侧,向下更新参考单元格(保留公式中的绝对/相对设置)。
它假设A1风格的地址,只有当活动单元格包含一个引用单个单元格的公式(如果不是,则静默结束)才能工作。 将默默覆盖目标单元格中​​的任何内容。

 Sub CopyToRight() Dim clFrom As Range Dim clAddr As Range Dim addr As String On Error GoTo EH Set clFrom = ActiveCell If clFrom.Formula Like "=*!*" Then Set clAddr = Range(Mid(clFrom.Formula, 2)) If clAddr.Count = 1 Then If clFrom.Formula Like "=*!$*$*" Then addr = clAddr.Offset(1, 0).Address(True, True) ElseIf clFrom.Formula Like "=*!$**" Then addr = clAddr.Offset(1, 0).Address(False, True) ElseIf clFrom.Formula Like "=*!*$*" Then addr = clAddr.Offset(1, 0).Address(True, False) Else addr = clAddr.Offset(1, 0).Address(False, False) End If clFrom.Offset(0, 1).Formula = "='" & clAddr.Worksheet.Name & "'!" & addr End If End If clFrom.Offset(0, 1).Select EH: End Sub