作者paul60209 (我是保罗小小)
看板Visual_Basic
标题Re: [VBA ] 这个写法为何无法改变字体颜色?
时间Mon Sep 10 11:16:51 2018
※ 引述《sde7w9xzo (4684694)》之铭言:
: 为何输出结果,B栏只有字体变粗却无法变色?
: http://i.imgur.com/YsQFImH.jpg
: http://i.imgur.com/q37Wmnf.jpg
: 这样写是希望一开时就把字体颜色粗细定义好,需要时就直接套用不用一直.font呼叫
: -----
: Sent from JPTT on my LGE LG-H962.
推文太麻烦了,乾脆重打一篇
Sub CopyFormat()
Dim LR As Intenger
With Sheets("工作表1")
LR=.Cells(1048576,"B").End(xlUP).Row
Cells(1,"A").Copy
Range(Cells(1,"B"),Cells(LR,"B")).PasteSpecial _
Paste:=xlPasteFormats
Application.CutCopyMode=False
End With
End Sub
备注:LR是个数值参数,他会去找出B栏的最後一行,
功能类似你在Excel内按Ctrl+方向键,
这样的方式可以把你回圈的部分拿掉,加快整个程式的运行速度,
另外,PasteSpecial的方式则是你Excel在贴上时的「选择性贴上」的功能
会直接将A1的储存格格式贴到B栏的选取范围中,
以上,希望有帮助到你~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.135.50.86
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Visual_Basic/M.1536549413.A.9D0.html
1F:推 sde7w9xzo: 我的for回圈内会有不同条件,底色跟文字颜色都不同,如 09/11 16:16
2F:→ sde7w9xzo: 果单纯复制贴上格式就要先预设十多种组合的储存格,再 09/11 16:16
3F:→ sde7w9xzo: 用if条件寻找,这样应该不会比较快。不过还是感谢提供 09/11 16:16