如何同时自动填写一个excel工作簿中的所有sheet?

小众上的大神多,看看能不能给指导一下这个问题。

我有个excel工作簿,里面有几十个sheet,每个sheet中的表格格式都相同,只是行数不同。
现在我希望在第一个sheet中自动填充一个公式,然后采用多选sheet的方式,同时应用到其他sheet上去。
现在遇到的问题是,我自动填充使用的是双击的方式,然后所有sheet都只填充到第一个sheet的最大行数,如果其他sheet页中的最大行数超过这个行数就不会自动往下填充了,有什么办法能实现所有sheet都自动填充到最大行吗?
WRHXXYW%BVX6G%{F@0{%6
大致就如上图,我在C1中输入公式“=A1+B1”,然后双击c1右下方,自动填充…
希望后续所有sheet都能同时执行此操作,且自动填充到最大行。

用vba呢, 循环每个sheet, for each sht, 每个sheet的最大行数为: Range(“a65536”).End(xlUp).Row, 再循环下公式应该没问题吧.

写VBA

Sub test()
    Dim WB As Workbook
    Set WB = ThisWorkbook

    For Each sh In WB.Sheets
        Dim rng As Range
        Set rng = sh.Range("A1000000").End(xlUp)
        sh.Range("C1:C" & rng.Row).ClearContents
        sh.Range("C1:C" & rng.Row).Formula = "=SUM(A1+B1)"
    Next
End Sub

刚才有大佬帮我写了一个完整的代码,经测试有效。

现在有点得陇望蜀的问问,有没有不使用vba就能解决问题的方案?

其实你自己都分析出来了,每个工作表的公式都是按第一个表格的行数去填充的。所以找出最大行数的那个工作表,移到第一位,再进行同时操作。因为有些位置没有数据,你可以用=IF(A1="","",A1*B1)来让视觉上舒服一点。或者说新建一个表格,将A1:B999单元格填入数据(就是你认为最大行是多少,其他表格都能覆盖到)

用VBA是最简单的了,它不会有多余的公式出来。

(P.S. 学习到了可以多个工作表同时操作。因为平时没用得上)

先查看工作簿中哪个sheet有最大行这个办法,也是一位大佬提示过我的,在我还不会上述VBA代码之前,自己写了一小段代码,能帮助自动分析从几十个上百个sheet中找到最大行的是哪个sheet,然后就在这个sheet上操作,也是可行的。
9~_IPQ3${I@4()R2~MQ1X_D
只是感觉这个方法不够高大上,不够全自动,没有VBA代码那么高的逼格。

现在,已经有了两种方法能够实现我的目标了,一种就是先查看哪个sheet页行数最多在其上操作;另一个是用VBA,一次性全部搞定。

比较好奇,会不会有第三种、第四种解决方案呢?

全选工作表,然后在c3,c4输入公式,然后按ctrl+e

按照您的提示,我实际操作了一下,无法实现目标。
方便的话,您上个gif?