ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3705|回复: 11

[求助] 公式向右填充

[复制链接]

TA的精华主题

TA的得分主题

发表于 2018-7-10 22:56 | 显示全部楼层 |阅读模式
请教老师们,怎么向右填充有规律的公式,从E4开始,第4行,每一个单元格=对应列数的第一行的绝对引用/D4单元格,E4到AM4单元格是我手动输入的,请教有没有代码可以实现这样的填充,非常感谢!
VBA刚入门,今天调试了一下午都不行,非常谢谢大家!

6 - 副本.rar

45.53 KB, 下载次数: 7

TA的精华主题

TA的得分主题

发表于 2018-7-10 23:02 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
试试
.FillRight

TA的精华主题

TA的得分主题

发表于 2018-7-11 00:03 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
6 - 副本.rar (225.11 KB, 下载次数: 13)
附件已写入代码,点击按钮可一键输入公式,请确认。
如果有用,请评分,谢谢!
  1. Sub test()
  2.     Dim m%, i%
  3.     Dim rng As Range
  4.     m = Sheet1.[a65536].End(xlUp).Row
  5.     i = 5
  6.     For Each rng In [E1:MI1]
  7.         Range(Cells(4, i), Cells(m, i)) = "=" & Cells(1, i) & "/" & "D4"
  8.         i = i + 1
  9.     Next
  10. End Sub
复制代码


评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2018-7-11 07:35 | 显示全部楼层
没理解为什么第一行用绝对引用,有什么必须的操作么?如果仅仅是和你一样的结果,E4=E1/$D$4,右拉到头不就解决了?

TA的精华主题

TA的得分主题

发表于 2018-7-11 07:38 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
wangweihebtu 发表于 2018-7-11 07:35
没理解为什么第一行用绝对引用,有什么必须的操作么?如果仅仅是和你一样的结果,E4=E1/$D$4,右拉到头不就 ...

输入公式,右拉到头,再下拉,也可以,但是工作表中数据还是挺多的,不太方便。

TA的精华主题

TA的得分主题

发表于 2018-7-11 07:39 | 显示全部楼层
昨晚用VBA给你写了一段,可以达到你要的效果,还在审核中。

TA的精华主题

TA的得分主题

发表于 2018-7-11 07:49 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
  1. Range("e4") = "=e1/$d$4"
  2. Range("e4").Resize(1, 10).FillRight
  3. 使用这样的语句可自动填充公式,10那个数字代表填充的列数,可以自己修改。
复制代码

TA的精华主题

TA的得分主题

发表于 2018-7-11 08:16 | 显示全部楼层
tudarong 发表于 2018-7-11 00:03
附件已写入代码,点击按钮可一键输入公式,请确认。
如果有用,请评分,谢谢!

代码中直接引用了第一行的值代入公式,而没有使用第一行的单元格地址代入公式。

TA的精华主题

TA的得分主题

发表于 2018-7-11 08:22 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
E4=E$1/$D4 右拉到头,下拉到底就成了,咱们没那水平鼓捣VBA,还不如这样来得快

TA的精华主题

TA的得分主题

发表于 2018-7-11 08:29 | 显示全部楼层
本帖最后由 wangweihebtu 于 2018-7-11 08:31 编辑

我自己不会写,在上边老兄的基础上改了个参数,看看是不是符合要求了

Sub test()
    Dim m%, i%
    Dim rng As Range
    m = Sheet1.[a65536].End(xlUp).Row
    i = 5
    For Each rng In [E1:MI1]
        Range(Cells(4, i), Cells(m, i)) = "=" & Cells(1, i).Address & "/" & "D4"
        i = i + 1
    Next
End Sub

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-8 02:38 , Processed in 0.027631 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表