2011-12-30 107 views
2

我負責創建倉庫地圖。如何選擇不同工作表上的單元格以填充單元格旁邊的單元格

在數據我必須有模型,描述和位置。

什麼我有是,我使用從第二頁的數據填充到「地圖」

='1'!F2 當我試圖拖動並用它來填補它變爲='1'!g2整條生產線的麻煩。我想它去='1'!F3

我看到它在做什麼的邏輯......但我不希望它使用該邏輯..我希望它使用它下面的下一個單元格填充該單元格。

回答

1

最簡單的事情可能是複製,然後選擇性粘貼>將數據轉換爲「1」到新工作表。然後,您可以拖動引用新工作表的公式,並按照預期行事。

編輯:根據您的原始問題,這將填充列的結果向右拖動,反之亦然。這實際上是做你的原始問題:

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

從A1開始並向任一方向拖動。要向左側添加標題行或行,只需將行或列插入頂部或左側(以保持公式發聲)。

編輯:這是Transpose函數,per @ brettdj的建議。我覺得很難一起工作,但可以肯定使得它更清楚這是怎麼回事:

在單元格F2:你的目標板的8000輸入:

=TRANSPOSE(Sheet1!$F2:$Z8000) 

然後,選中所有這些細胞,進入在其中一個單元格中編輯模式並執行Ctrl Shft Enter來輸入數組。如果您必須調整源範圍的大小,我相信您必須使用正確的範圍重複這些步驟。我自己是索引迷,所以會堅持下去。偏移是不穩定的,所以我會避免它。如果我有任何最後的編輯錯誤,@brettdj會幫助我們。

+0

感謝Doug,我會這樣做,除了8000 +項目我需要填充「地圖」。我開始這樣做,然後認爲那是一個更簡單的方法。我正在使用間接參數......但這會導致需要更改一些值以使其正確。我知道必須有一個更簡單的方法,我太想想它了。 – user1123546 2011-12-30 22:15:13

+0

我需要更好地描述您正在複製的工作表以及期望的最終結果。這聽起來像是一個8000行的數據,你想讀入8000列。因爲您只是想拖動公式,所以我認爲只需將數據轉換爲中間表就足夠了,但聽起來還有其他問題。 – 2011-12-30 23:12:59

+0

+1。你也可以使用'TRANSPOSE'公式directlty(數組輸入)或'OFFSET'。 'TRANSPOSE'更加透明和可審計。 – brettdj 2011-12-31 00:52:52

0

由於您想要的是非本機行爲,因此可能需要編寫一個小的VBA宏來執行復制,並將其分配給鍵盤快捷鍵。

下面是一個簡單的例子,將公式單元格複製到右側,向下更新參考單元格(保留公式中的絕對/相對設置)。
它假定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 
+0

謝謝克里斯,我會試試這個。 – user1123546 2011-12-30 23:08:41

相關問題