首页 文章

Excel:如何在多个工作表中显示数据?

提问于
浏览
2

我编写了一个脚本,它创建了一个复杂的Excel工作表,其中包含来自多个数据源的数据 . 每张纸上的数据通常为1-5行 . 如果我可以创建另一张可以在线显示其他工作表数据的工作表(例如,在我更改数据表时概述表应该更改),那就太棒了 . 我还需要使用各种样式格式化数据,并将概述表复制它们 . 最后,数据表具有不同的列宽 .

我以为我可以简单地导入纸张 . 当我将每个工作表保存到单个文件然后将它们作为OLE对象导入时,这种方法有效 . 有没有办法只用一个文件来达到同样的效果?

我需要告诉Excel“在Sheet1上的Sheet2上绘制A1:F3到单元格A1” .

“插入对象”让我可以创建Word文档或PP演示文稿并将其放入单元格中,但我无法创建新的Excel工作表并将其放入单元格中 . 是什么赋予了?

5 回答

  • 3

    您可以使用相机对象 .

    • 在封面页上复制所需的范围

    • 转到封面页

    • 按住shift并单击“编辑”菜单

    • 单击“粘贴图片链接”菜单项

    这将粘贴一个动态图片对象,只要数据表上的相应区域发生更改,该对象就会更新 .

  • 2

    复制范围 . 移动到要保留参考的单元格 . 选择“编辑”菜单时按住Shift键 . 注意有新的菜单项; “粘贴图片”和“粘贴图片链接” . 您想要选择“粘贴图片链接” . 现在每当“源”更新或格式改变时,“目的地”将更新 .

    Sub DemoIt()
    
        'open excel and vbe windows side-by-side
        '   to see results when break points hit
    
        'setup values
        Range("A1").Select
        ActiveCell.FormulaR1C1 = "A"
        Range("A2").Select
        ActiveCell.FormulaR1C1 = "B"
        Range("A3").Select
        ActiveCell.FormulaR1C1 = "C"
    
        'select "source" values and copy
        Range("A1:A3").Select
        Selection.Copy
    
        'move to "destination"
        Range("B1").Select
    
        'paste the "picture link"
        ActiveSheet.Pictures.Paste(Link:=True).Select
        Application.CutCopyMode = False
    
        'check out results
        Stop
    
        'change values
        Range("A2").Select
        ActiveCell.FormulaR1C1 = "99"
    
        'notice "destination" changed
        Stop
    
        'change formatting
        Range("A3").Select
        Selection.Font.Size = 20
    
        'notice formatting changed
        Stop
    
    End Sub
    
  • 2

    单个Excel工作簿可以包含多个工作表 . 一张表中的公式可以引用同一工作簿中另一张表中的单元格 .

  • 2

    如果您想自己构建一个解决方案,请尝试:
    http://poi.apache.org/
    Apache POI - 访问Microsoft格式文件的Java API它非常易于使用......您可以轻松地格式化数据等...

    我使用了Apache Digester的POI(http://commons.apache.org/digester/
    从XML文件中读取数据并创建Excel表格 .

    [编辑]使用此方法,您可以读取现有的Excel工作表,复制工作表之间的相关单元格(包括格式) . 但是,这并没有解决“不同的列宽”和“在线更新” .

  • 0

    您可以使用以下语法引用其他工作表:

    SheetName!Cell
    

    所以在Sheet1,A1的公式中

    =Sheet2!B4
    

    将在B4的sheet2中有一个实时引用值

相关问题