首页 > 解决方案 > 有没有床单的基础课

问题描述

我已经编写了一个基本例程来执行一些页面格式设置(设置页眉和页脚等)。此例程将工作表作为第一个参数:

Sub FormatSheet(Optional ws As Worksheet = Nothing, _
            Optional language As String = "Deutsch", _
            ...)

一切都很好,直到今天有人有一个带有Chart-sheet 的工作簿。由于您也可以为此类工作表设置所有属性,因此我对自己说:“好吧,没问题,我会将参数类型更改为Sheet而不是Worksheet- 问题已解决。但是,我找不到任何这样Sheet的 -class。

我的解决方法是将参数类型更改为Object- 这有效。但是,我不太喜欢这种尝试,因为 Object 可以是任何东西,我只想明确允许 - uuhm Sheets。当然,我可以通过检查对象类型等来解决这个问题,但我的基本问题是:Excel/VBA 中是否有任何工作表的“父”类类型?

标签: excelvba

解决方案


没有,因为不需要一个。

如果 的目的FormatSheet是配置工作表的PageSetup,则采用PageSetup参数而不是整体Worksheet

Chart像 一样,该类具有Worksheettype 的PageSetup属性PageSetup

cf最少知识原则 / 得墨忒耳定律:尽可能少地给出一个程序来完成它的工作。您不需要整体Worksheet来配置PageSetup.


推荐阅读