Excel 2007/2008 中的转置问题:Excel 甚至转置绝对引用

Excel 2007/2008 中的转置问题:Excel 甚至转置绝对引用

我需要转置一个大型工作表。此工作表反过来引用另一张工作表上的绝对位置。它看起来像这样:

       A                  B              C
1 Alternatives                      Hardware Costs
2                                   PC desktops / Windows 7
3 Desktops (100%)  Number           123
4                  Capital expenses $123,456
5                  Per client       $789

C5 有一个公式:='Variables and sources'!$C$4

当我通过选择 > 复制 > 粘贴 > 转置进行转置时,此乐段转置正常,C5 除外。我期望公式保持不变:它引用单独的工作表;它使用绝对引用;MS 文章http://office.microsoft.com/en-us/excel-help/switch-transpose-columns-and-rows-HP010224502.aspx说“为了确保公式继续正确引用非转置单元格中的数据,请在转置之前在公式中使用绝对引用。”。

但结果是 ='Variables and sources'!$D$47。为什么?有什么办法可以解决这个问题吗?我尝试了适用于 Windows 的 Excel 2007 和适用于 Mac 的 Excel 2008。

我很困惑:工作表很大;我确实需要转置它。

答案1

我也遇到过同样的问题 - 太气人了!我可以顺利转置 2-4 行公式,但任何更大的选择都会变得一团糟(或者通常转置结果底部的 2-4 行是正确的) - 据我所知,这只是一个明显的错误!?

我的工作表中有超过 27000 个单元格需要转置 - 为每个单元格创建命名范围不是一个选择:)

我最终创建了一些混乱的代码来逐行执行

Sub transpose()
    ' gummih transpose, takes individual columns and pastes as rows
    Dim firstLine As Integer
    Dim lastLine As Integer
    Dim lineToStartPasting as Integer
    Dim cols As Integer
    firstLine = 2
    lastLine = 80
    lineToStartPasting = 89 'pasting starts at "A90"

    For cols = 1 To 100
        Range(ActiveSheet.Cells(firstLine , cols ), ActiveSheet.Cells(lastLine , cols )).Select
        Selection.Copy

        ActiveSheet.Cells(lineToStartPasting + cols , 1).Select
        Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
            False, transpose:=True
    Next cols 
End Sub

答案2

尝试使用命名的范围/单元格。

公式>姓名经理>新的

输入您喜欢的名字,例如“每个客户端

在“引用”中输入以下内容(不要忘记“=”):

='Variables and sources'!$C$4

在细胞内C5,使用以下公式:

=per_client

再次转置您的数据范围。

相关内容